Load libraries

library(tidyverse) # for everything
library(readxl) # for reading in excel files
library(janitor) # data checks and cleaning
library(glue) # for easy pasting
library(FactoMineR) # for PCA
library(factoextra) # for PCA
library(rstatix) # for stats
library(pheatmap) # for heatmaps
library(plotly) # for interactive plots
library(htmlwidgets) # for saving interactive plots
library(devtools)
library(notame) # used for feature clustering
library(doParallel)
library(igraph) # feature clustering
library(ggpubr) # visualizations
library(knitr) # clean table printing
library(rmarkdown)
library(mixOmics) # for multilevel PCAs
library(corrr)
library(ggcorrplot)
library(ggthemes)
library(ggtext)
library(PCAtools)
library(pathview) # for functional analysis and KEGG annotation

Read in data

# raw filtered metabolomics data in C18 (-)
omicsdata <- read_csv("Feature lists/C18Neg-Data-Filtered-in-R.csv")

# metadata
metadata <- read_excel("Metadata-urine-c18neg.xlsx")

Wrangle data

metadata <- metadata %>%
  rename("sample_ID" = Sample_ID)
# rename "row ID"
omicsdata <- omicsdata %>%
  rename("row_ID" = `row ID`)

# how many features
nrow(omicsdata)
## [1] 1411
# are there any duplicates?
omicsdata %>% get_dupes(mz_rt)
## # A tibble: 4 × 59
##   mz_rt          dupe_count row_ID `6111_U4_C18NEG_42` `6101_U2_C18NEG_30`
##   <chr>               <int>  <dbl>               <dbl>               <dbl>
## 1 361.0666_4.291          2   7185                 NA                  NA 
## 2 361.0666_4.291          2   7192                 NA                  NA 
## 3 385.1685_4.355          2   7299              27486.               5135.
## 4 385.1685_4.355          2   7306              27486.               5135.
## # ℹ 54 more variables: `6102_U1_C18NEG_26` <dbl>, `6110_U2_C18NEG_34` <dbl>,
## #   `6105_U4_C18NEG_47` <dbl>, `6103_U4_C18NEG_53` <dbl>,
## #   `6105_U1_C18NEG_43` <dbl>, `6104_U1_C18NEG_55` <dbl>,
## #   `6113_U4_C18NEG_62` <dbl>, `6105_U2_C18NEG_40` <dbl>,
## #   `6113_U3_C18NEG_15` <dbl>, `6102_U3_C18NEG_48` <dbl>,
## #   `6101_U3_C18NEG_29` <dbl>, `6108_U4_C18NEG_18` <dbl>,
## #   `6104_U4_C18NEG_12` <dbl>, `6111_U1_C18NEG_51` <dbl>, …
# remove dupes
omicsdata <- omicsdata %>% 
  distinct(mz_rt, .keep_all = TRUE)

# check again for dupes
omicsdata %>% get_dupes(mz_rt)
## # A tibble: 0 × 59
## # ℹ 59 variables: mz_rt <chr>, dupe_count <int>, row_ID <dbl>,
## #   6111_U4_C18NEG_42 <dbl>, 6101_U2_C18NEG_30 <dbl>, 6102_U1_C18NEG_26 <dbl>,
## #   6110_U2_C18NEG_34 <dbl>, 6105_U4_C18NEG_47 <dbl>, 6103_U4_C18NEG_53 <dbl>,
## #   6105_U1_C18NEG_43 <dbl>, 6104_U1_C18NEG_55 <dbl>, 6113_U4_C18NEG_62 <dbl>,
## #   6105_U2_C18NEG_40 <dbl>, 6113_U3_C18NEG_15 <dbl>, 6102_U3_C18NEG_48 <dbl>,
## #   6101_U3_C18NEG_29 <dbl>, 6108_U4_C18NEG_18 <dbl>, 6104_U4_C18NEG_12 <dbl>,
## #   6111_U1_C18NEG_51 <dbl>, 6105_U3_C18NEG_39 <dbl>, …
# how many features
nrow(omicsdata)
## [1] 1409

Sometimes a weird logical column (lgl) comes up in my data. Let’s check if it’s there

colnames(omicsdata)
##  [1] "mz_rt"                       "row_ID"                     
##  [3] "6111_U4_C18NEG_42"           "6101_U2_C18NEG_30"          
##  [5] "6102_U1_C18NEG_26"           "6110_U2_C18NEG_34"          
##  [7] "6105_U4_C18NEG_47"           "6103_U4_C18NEG_53"          
##  [9] "6105_U1_C18NEG_43"           "6104_U1_C18NEG_55"          
## [11] "6113_U4_C18NEG_62"           "6105_U2_C18NEG_40"          
## [13] "6113_U3_C18NEG_15"           "6102_U3_C18NEG_48"          
## [15] "6101_U3_C18NEG_29"           "6108_U4_C18NEG_18"          
## [17] "6104_U4_C18NEG_12"           "6111_U1_C18NEG_51"          
## [19] "6105_U3_C18NEG_39"           "6110_U4_C18NEG_10"          
## [21] "6111_U3_C18NEG_54"           "6104_U2_C18NEG_19"          
## [23] "6101_U1_C18NEG_59"           "6111_U2_C18NEG_35"          
## [25] "6113_U2_C18NEG_31"           "6101_U4_C18NEG_14"          
## [27] "6103_U3_C18NEG_61"           "6108_U3_C18NEG_28"          
## [29] "6109_U1_C18NEG_58"           "6104_U3_C18NEG_32"          
## [31] "6110_U3_C18NEG_45"           "6108_U2_C18NEG_27"          
## [33] "6108_U1_C18NEG_44"           "6102_U4_C18NEG_50"          
## [35] "PooledQC10_C18NEG_64"        "6103_U2_C18NEG_60"          
## [37] "PooledQC9_C18NEG_57"         "6102_U2_C18NEG_16"          
## [39] "6112_U2_C18NEG_37"           "6110_U1_C18NEG_11"          
## [41] "6112_U4_C18NEG_63"           "6109_U3_C18NEG_52"          
## [43] "6109_U4_C18NEG_22"           "6109_U2_C18NEG_13"          
## [45] "6106_U4_C18NEG_36"           "6113_U1_C18NEG_24"          
## [47] "PooledQC5_C18NEG_25"         "6106_U3_C18NEG_20"          
## [49] "PooledQC6_C18NEG_33"         "6112_U3_C18NEG_56"          
## [51] "PooledQC4_C18NEG_17"         "PooledQC8_C18NEG_49"        
## [53] "PooledQC7_C18NEG_41"         "6103_U1_C18NEG_21"          
## [55] "6106_U1_C18NEG_23"           "6106_U2_C18NEG_46"          
## [57] "6112_U1_C18NEG_38"           "Prerun_PooledQC3_C18NEG_7_1"
# remove weird lgl column
omicsdata <- omicsdata %>%
  dplyr::select(!where(is.logical)) 

colnames(omicsdata)
##  [1] "mz_rt"                       "row_ID"                     
##  [3] "6111_U4_C18NEG_42"           "6101_U2_C18NEG_30"          
##  [5] "6102_U1_C18NEG_26"           "6110_U2_C18NEG_34"          
##  [7] "6105_U4_C18NEG_47"           "6103_U4_C18NEG_53"          
##  [9] "6105_U1_C18NEG_43"           "6104_U1_C18NEG_55"          
## [11] "6113_U4_C18NEG_62"           "6105_U2_C18NEG_40"          
## [13] "6113_U3_C18NEG_15"           "6102_U3_C18NEG_48"          
## [15] "6101_U3_C18NEG_29"           "6108_U4_C18NEG_18"          
## [17] "6104_U4_C18NEG_12"           "6111_U1_C18NEG_51"          
## [19] "6105_U3_C18NEG_39"           "6110_U4_C18NEG_10"          
## [21] "6111_U3_C18NEG_54"           "6104_U2_C18NEG_19"          
## [23] "6101_U1_C18NEG_59"           "6111_U2_C18NEG_35"          
## [25] "6113_U2_C18NEG_31"           "6101_U4_C18NEG_14"          
## [27] "6103_U3_C18NEG_61"           "6108_U3_C18NEG_28"          
## [29] "6109_U1_C18NEG_58"           "6104_U3_C18NEG_32"          
## [31] "6110_U3_C18NEG_45"           "6108_U2_C18NEG_27"          
## [33] "6108_U1_C18NEG_44"           "6102_U4_C18NEG_50"          
## [35] "PooledQC10_C18NEG_64"        "6103_U2_C18NEG_60"          
## [37] "PooledQC9_C18NEG_57"         "6102_U2_C18NEG_16"          
## [39] "6112_U2_C18NEG_37"           "6110_U1_C18NEG_11"          
## [41] "6112_U4_C18NEG_63"           "6109_U3_C18NEG_52"          
## [43] "6109_U4_C18NEG_22"           "6109_U2_C18NEG_13"          
## [45] "6106_U4_C18NEG_36"           "6113_U1_C18NEG_24"          
## [47] "PooledQC5_C18NEG_25"         "6106_U3_C18NEG_20"          
## [49] "PooledQC6_C18NEG_33"         "6112_U3_C18NEG_56"          
## [51] "PooledQC4_C18NEG_17"         "PooledQC8_C18NEG_49"        
## [53] "PooledQC7_C18NEG_41"         "6103_U1_C18NEG_21"          
## [55] "6106_U1_C18NEG_23"           "6106_U2_C18NEG_46"          
## [57] "6112_U1_C18NEG_38"           "Prerun_PooledQC3_C18NEG_7_1"
# create long df for omics df
omicsdata_tidy <- omicsdata %>%
  pivot_longer(cols = 3:ncol(.),
               names_to = "sample_ID",
               values_to = "peak_height")

# combine meta and omics dfs
meta_omics <- full_join(omicsdata_tidy,
                         metadata,
                         by = c("sample_ID" = "sample_ID"))

# separate mz and rt
meta_omics_sep <- meta_omics %>%
  separate(col = mz_rt,
           into = c("mz", "rt"),
           sep = "_") 

# convert columns to correct type
meta_omics_sep$mz <- as.numeric(meta_omics_sep$mz)
meta_omics_sep$rt <- as.numeric(meta_omics_sep$rt)
meta_omics_sep$Subject <- as.character(meta_omics_sep$Subject)
meta_omics_sep$Intervention <- as.character(meta_omics_sep$Intervention)

# rearrange column order
meta_omics_sep <- meta_omics_sep %>%
  dplyr::select(sample_ID, pre_post, Intervention, everything())

str(meta_omics_sep)
## tibble [78,904 × 14] (S3: tbl_df/tbl/data.frame)
##  $ sample_ID        : chr [1:78904] "6111_U4_C18NEG_42" "6101_U2_C18NEG_30" "6102_U1_C18NEG_26" "6110_U2_C18NEG_34" ...
##  $ pre_post         : chr [1:78904] "post" "post" "pre" "post" ...
##  $ Intervention     : chr [1:78904] "Red" "Red" "Red" "Yellow" ...
##  $ mz               : num [1:78904] 236 236 236 236 236 ...
##  $ rt               : num [1:78904] 0.603 0.603 0.603 0.603 0.603 0.603 0.603 0.603 0.603 0.603 ...
##  $ row_ID           : num [1:78904] 342 342 342 342 342 342 342 342 342 342 ...
##  $ peak_height      : num [1:78904] 4148 65119 16742 16351 46171 ...
##  $ Subject          : chr [1:78904] "6111" "6101" "6102" "6110" ...
##  $ Period           : chr [1:78904] "U4" "U2" "U1" "U2" ...
##  $ sequence         : chr [1:78904] "Y_R" "R_Y" "R_Y" "Y_R" ...
##  $ Intervention_week: num [1:78904] 14 6 2 6 14 14 2 2 14 6 ...
##  $ Sex              : chr [1:78904] "M" "F" "M" "M" ...
##  $ Age              : num [1:78904] 46 58 65 36 40 60 40 54 61 40 ...
##  $ BMI              : num [1:78904] 30 31.1 36.8 29.9 30.4 ...
# replace NA's in subject and intervention columns with QC
meta_omics_sep$Subject <- meta_omics_sep$Subject %>%
  replace_na("QC")

meta_omics_sep$Intervention <- meta_omics_sep$Intervention %>%
  replace_na("QC")

Data summaries

Number of masses detected

nrow(omicsdata)
## [1] 1409

Mass range for metabolites detected?

range(meta_omics_sep$mz)
## [1]   73.0294 1303.2955

RT range for metabolites detected?

range(meta_omics_sep$rt)
## [1] 0.603 8.045

mass vs RT scatterplot

# plot
(plot_mzvsrt <- meta_omics_sep %>%
  ggplot(aes(x = rt, y = mz)) +
  geom_point() +
  theme_minimal() +
  labs(x = "Retention time, min",
       y = "m/z, neutral",
       title = "mz across RT for all features"))

Histogram for mass range

meta_omics_sep %>%
  ggplot(aes(x = mz)) +
  geom_histogram(binwidth = 25) +
  theme_minimal() +
  labs(x = "Monoisotopic mass (amu)",
       y = "Number of features",
       title = "Distribution of features by mass")

Histogram for RT

meta_omics_sep %>%
  ggplot(aes(x = rt)) +
  geom_histogram(binwidth = 0.1) + # 6 second bins
  theme_minimal() +
  labs(x = "Retention time",
       y = "Number of features",
       title = "Distribution of features by retention time")

NAs and imputing

NAs

# samples only (no QCs)
omicsdata_noQC <- omicsdata %>%
  dplyr::select(-contains("QC"))

#NAs in samples only?
NAbyRow_noQC <- rowSums(is.na(omicsdata_noQC[,-1]))

hist(NAbyRow_noQC,
     breaks = 48, # because there are 48 samples 
     xlab = "Number of missing values",
     ylab = "Number of metabolites",
     main = "How many missing values are there?")

Are there any missing values in QCs? There shouldn’t be after data preprocessing/filtering

omicsdata_QC <- omicsdata %>%
  dplyr::select(starts_with("P")) 

NAbyRow_QC <- colSums(is.na(omicsdata_QC))
# lets confirm that there are no missing values from my QCs
sum(NAbyRow_QC) # no
## [1] 0
# calculate how many NAs there are per feature in whole data set
contains_NAs <- meta_omics %>%
  group_by(mz_rt) %>%
  count(is.na(peak_height)) %>%
  filter(`is.na(peak_height)` == TRUE)
kable(contains_NAs)
mz_rt is.na(peak_height) n
1003.2655_3.721 TRUE 44
1003.2656_3.716 TRUE 44
1004.2068_3.286 TRUE 43
1041.2898_4.199 TRUE 43
1069.2473_3.702 TRUE 42
108.0216_3.832 TRUE 40
108.0218_4.217 TRUE 41
109.0288_3.757 TRUE 43
109.0294_3.11 TRUE 24
1115.3646_3.466 TRUE 1
1117.2561_3.018 TRUE 44
1121.3811_3.466 TRUE 1
1122.0244_4.55 TRUE 14
1122.0248_4.125 TRUE 20
1122.0249_4.032 TRUE 21
1123.2723_0.775 TRUE 40
1123.2728_3.021 TRUE 44
1124.0041_3.197 TRUE 1
1131.2716_3.026 TRUE 44
1132.0633_4.207 TRUE 42
1135.2278_4.215 TRUE 42
1137.288_3.026 TRUE 44
1141.2436_3.619 TRUE 43
1141.2441_4.201 TRUE 42
1153.2827_0.789 TRUE 42
1159.3041_3.727 TRUE 44
1165.3189_3.729 TRUE 44
123.0452_3.87 TRUE 3
123.0452_4.211 TRUE 5
124.01_0.775 TRUE 5
124.0486_3.843 TRUE 43
1257.2949_3.465 TRUE 3
1279.2478_3.734 TRUE 44
1303.2955_3.702 TRUE 44
139.0401_0.786 TRUE 6
139.0401_3.003 TRUE 14
150.0562_3.542 TRUE 6
161.9866_2.133 TRUE 20
161.988_0.685 TRUE 7
167.0349_3.921 TRUE 1
171.0487_4.824 TRUE 37
175.0975_4.743 TRUE 4
177.1283_5.202 TRUE 38
181.0503_4.495 TRUE 21
181.0507_4.062 TRUE 9
181.9916_0.803 TRUE 4
181.9917_2.823 TRUE 9
182.0076_0.788 TRUE 9
182.0282_0.77 TRUE 15
187.0383_3.122 TRUE 2
191.1076_5.282 TRUE 14
191.1105_5.283 TRUE 16
193.0354_6.242 TRUE 4
197.0453_3.76 TRUE 21
197.0471_3.745 TRUE 24
203.0172_4.555 TRUE 4
209.0452_3.159 TRUE 27
209.0452_3.24 TRUE 29
209.0455_3.749 TRUE 5
209.0532_3.773 TRUE 3
210.0419_3.959 TRUE 40
211.0971_3.846 TRUE 5
212.0065_4.503 TRUE 24
212.0937_3.815 TRUE 2
212.0968_4.21 TRUE 42
216.0277_4.034 TRUE 2
217.0161_1.159 TRUE 3
218.0821_5.22 TRUE 1
219.0509_2.854 TRUE 5
219.0524_2.85 TRUE 11
220.0979_4.733 TRUE 4
221.1178_5.185 TRUE 28
222.0406_3.686 TRUE 1
223.0583_2.562 TRUE 32
227.0551_2.986 TRUE 2
227.0554_2.1 TRUE 29
227.0628_2.987 TRUE 23
227.1036_0.798 TRUE 4
232.0047_2.518 TRUE 7
236.1018_5.033 TRUE 19
237.0356_3.369 TRUE 14
237.0359_3.933 TRUE 16
237.1243_4.614 TRUE 2
239.1144_0.622 TRUE 1
246.0109_2.385 TRUE 1
247.0798_4.12 TRUE 2
251.0128_3.524 TRUE 2
252.0891_4.335 TRUE 41
253.0503_5.048 TRUE 28
254.6229_6.168 TRUE 1
255.0674_5.078 TRUE 21
257.0801_5.284 TRUE 14
257.0816_6.056 TRUE 31
258.044_2.007 TRUE 13
260.0239_2.686 TRUE 5
263.0591_2.805 TRUE 2
263.1054_2.91 TRUE 1
265.0184_2.828 TRUE 9
269.0163_3.668 TRUE 16
276.0009_3.151 TRUE 34
277.0353_3.723 TRUE 1
277.0852_0.658 TRUE 4
279.0487_3.569 TRUE 12
279.0491_3.95 TRUE 1
279.049_3.659 TRUE 7
279.0984_3.799 TRUE 1
280.0779_6.362 TRUE 44
293.0743_2.543 TRUE 5
294.149_5.025 TRUE 41
295.0252_3.897 TRUE 3
295.03_2.565 TRUE 15
297.1062_4.504 TRUE 17
305.0561_4.737 TRUE 13
307.0111_2.574 TRUE 14
307.1184_6.294 TRUE 1
309.0242_2.522 TRUE 5
310.9761_0.719 TRUE 2
313.0569_3.13 TRUE 13
320.1087_2.579 TRUE 44
322.1104_2.943 TRUE 32
322.1105_3.605 TRUE 37
323.0414_2.68 TRUE 26
324.0682_6.363 TRUE 43
325.0323_0.804 TRUE 2
326.0892_2.313 TRUE 4
326.0973_2.32 TRUE 11
328.9944_2.584 TRUE 25
331.1218_3.932 TRUE 5
334.0517_3.708 TRUE 43
335.0215_3.886 TRUE 6
336.0706_3.376 TRUE 13
336.1218_3.046 TRUE 3
336.1323_3.647 TRUE 24
337.0436_0.684 TRUE 1
337.1446_4.025 TRUE 3
337.1469_3.591 TRUE 15
338.0632_3.433 TRUE 37
338.0879_3.557 TRUE 1
338.1134_0.651 TRUE 8
338.1178_2.307 TRUE 46
341.1234_4.519 TRUE 1
345.1933_4.201 TRUE 1
347.0076_0.814 TRUE 2
347.0774_4.782 TRUE 22
347.0881_3.328 TRUE 13
347.17_3.394 TRUE 1
351.1236_4.04 TRUE 9
354.1007_4.717 TRUE 3
354.1009_5.03 TRUE 1
356.1002_2.592 TRUE 8
357.0825_3.399 TRUE 3
359.0958_2.977 TRUE 3
359.0975_2.524 TRUE 4
360.1388_3.006 TRUE 4
361.0218_2.595 TRUE 2
361.0646_4.442 TRUE 14
361.0666_4.291 TRUE 19
364.0955_2.559 TRUE 41
364.0958_3.594 TRUE 40
364.0972_3.027 TRUE 42
366.0851_4.55 TRUE 16
368.0971_3.297 TRUE 9
368.9723_3.004 TRUE 2
372.1116_3.914 TRUE 2
373.0764_3.153 TRUE 6
373.1513_3.174 TRUE 15
373.1514_3.715 TRUE 1
374.1378_5.008 TRUE 40
374.1587_3.706 TRUE 34
375.0931_2.077 TRUE 44
377.1019_5.09 TRUE 12
379.1393_5.891 TRUE 3
379.1955_5.602 TRUE 12
381.0802_3.385 TRUE 1
381.1551_6.237 TRUE 4
381.1937_6.247 TRUE 2
387.1489_5.77 TRUE 27
389.1005_2.94 TRUE 1
389.1043_2.952 TRUE 3
389.1059_2.672 TRUE 11
391.1122_2.774 TRUE 16
395.1144_4.677 TRUE 20
396.1124_4.459 TRUE 1
396.1279_4.011 TRUE 10
396.1297_3.506 TRUE 26
397.1895_4.429 TRUE 9
397.1911_4.067 TRUE 29
401.1094_4.24 TRUE 4
403.066_3.865 TRUE 7
404.0395_3.379 TRUE 2
404.0405_3.511 TRUE 1
405.0285_1.16 TRUE 2
405.1707_5.449 TRUE 6
405.2644_6.291 TRUE 5
407.0405_4.991 TRUE 2
407.129_5.446 TRUE 16
407.2799_5.411 TRUE 1
407.2799_5.805 TRUE 2
407.2801_6.791 TRUE 6
411.0787_0.764 TRUE 1
411.0792_3.55 TRUE 1
411.0814_2.735 TRUE 2
412.1044_3.523 TRUE 1
413.1436_3.2 TRUE 3
415.0625_4.788 TRUE 28
416.1536_5.683 TRUE 4
417.0951_3.717 TRUE 7
417.1173_4.046 TRUE 6
417.1192_4.5 TRUE 8
418.1327_4.164 TRUE 34
418.1842_3.015 TRUE 33
419.1155_2.861 TRUE 28
421.0582_5.463 TRUE 11
422.0544_2.559 TRUE 29
422.1067_0.783 TRUE 4
422.1084_2.915 TRUE 38
425.0363_4.553 TRUE 1
427.0103_1.161 TRUE 2
427.0844_2.991 TRUE 12
428.0941_2.98 TRUE 14
428.0955_4.037 TRUE 31
428.0976_3.601 TRUE 31
428.9933_3.184 TRUE 1
429.0565_4.442 TRUE 18
429.0571_4.306 TRUE 19
429.0815_4.032 TRUE 4
429.082_3.756 TRUE 6
429.0831_3.189 TRUE 13
429.083_3.201 TRUE 14
431.0979_3.907 TRUE 8
431.1141_3.739 TRUE 18
431.1146_4.185 TRUE 2
432.0832_2.56 TRUE 44
432.1213_3.706 TRUE 30
432.1447_3.927 TRUE 22
432.1631_3.52 TRUE 34
432.1639_2.932 TRUE 39
432.2024_0.669 TRUE 43
432.2027_3.06 TRUE 42
433.0646_4.045 TRUE 7
433.113_4.886 TRUE 8
434.1396_3.922 TRUE 24
436.092_0.669 TRUE 1
436.1064_5.004 TRUE 39
437.0526_5.832 TRUE 6
437.18_7.078 TRUE 14
439.1146_6.219 TRUE 30
441.1026_3.212 TRUE 15
442.1246_5.012 TRUE 39
443.0945_3.705 TRUE 10
445.0782_4.484 TRUE 1
445.1072_3.893 TRUE 3
446.0335_2.313 TRUE 7
446.1142_3.879 TRUE 19
446.1795_4.499 TRUE 4
446.1831_4.341 TRUE 3
447.0921_4.067 TRUE 1
447.0928_3.777 TRUE 1
447.092_4.187 TRUE 1
448.1934_0.807 TRUE 22
448.1959_3.232 TRUE 37
448.1961_5.778 TRUE 42
448.1966_4.911 TRUE 30
449.0698_2.589 TRUE 12
449.1074_4.301 TRUE 2
449.142_6.234 TRUE 17
455.1062_4.407 TRUE 8
457.0623_2.989 TRUE 1
457.0651_3.354 TRUE 15
457.0963_2.367 TRUE 40
457.097_2.652 TRUE 24
457.2207_6.206 TRUE 14
458.9733_3.815 TRUE 5
459.0361_4.296 TRUE 3
459.0924_4.452 TRUE 6
459.0926_3.306 TRUE 13
459.093_3.801 TRUE 1
459.1629_2.778 TRUE 5
461.0817_4.193 TRUE 8
461.0857_3.898 TRUE 8
461.0863_3.571 TRUE 5
463.0831_5.418 TRUE 1
464.0663_2.822 TRUE 6
465.1366_4.417 TRUE 3
466.0888_4.204 TRUE 14
468.0438_2.896 TRUE 6
468.0834_2.815 TRUE 24
471.0822_3.708 TRUE 1
471.199_5.262 TRUE 13
474.1054_5.422 TRUE 22
475.2184_5.932 TRUE 1
476.0359_3.919 TRUE 2
476.0415_4.203 TRUE 38
476.1913_6.018 TRUE 40
477.1007_0.807 TRUE 16
477.1039_2.949 TRUE 14
477.1039_4.686 TRUE 8
479.0459_2.443 TRUE 16
479.0465_3.005 TRUE 8
479.0506_0.791 TRUE 2
481.0163_4.286 TRUE 7
482.2186_4.626 TRUE 32
483.0154_2.51 TRUE 11
484.0498_2.566 TRUE 9
485.0499_4.198 TRUE 12
486.1199_5.689 TRUE 41
487.0726_2.982 TRUE 6
487.0759_2.632 TRUE 28
488.0429_4.206 TRUE 40
489.0936_2.593 TRUE 8
489.2111_3.578 TRUE 22
489.2123_4.076 TRUE 16
491.1861_5.71 TRUE 10
491.191_4.507 TRUE 12
492.1871_5.243 TRUE 40
492.1884_4.319 TRUE 24
493.0642_3.179 TRUE 1
493.0653_3.147 TRUE 1
493.1858_5.275 TRUE 14
493.2869_6.516 TRUE 7
494.0742_2.602 TRUE 22
495.2227_4.812 TRUE 2
495.2229_3.594 TRUE 24
495.223_4.067 TRUE 4
496.198_6.048 TRUE 40
497.0695_3.785 TRUE 5
497.2379_4.163 TRUE 2
500.1902_3.066 TRUE 41
500.282_5.708 TRUE 44
501.1047_6.238 TRUE 30
501.1339_4.505 TRUE 4
501.2122_5.698 TRUE 10
502.1148_5.219 TRUE 36
502.2071_0.806 TRUE 43
503.2011_4.23 TRUE 16
505.1427_2.841 TRUE 6
505.2452_7.002 TRUE 31
507.0806_3.582 TRUE 24
509.0384_0.699 TRUE 5
509.0409_3.291 TRUE 3
509.1453_5.277 TRUE 14
511.1128_6.237 TRUE 32
512.1916_6.018 TRUE 38
513.0964_3.899 TRUE 2
514.136_3.993 TRUE 1
514.1681_4.367 TRUE 23
514.1698_4.543 TRUE 21
515.1648_5.296 TRUE 17
516.1022_2.528 TRUE 12
516.2234_0.803 TRUE 44
517.0977_4.399 TRUE 4
517.1295_6.231 TRUE 27
517.1331_3.892 TRUE 9
517.2049_4.804 TRUE 20
517.2413_8.045 TRUE 1
519.223_7.484 TRUE 35
521.1082_4.508 TRUE 2
521.239_6.221 TRUE 10
525.0334_3.606 TRUE 6
527.1086_4.425 TRUE 2
528.2617_5.454 TRUE 1
529.162_5.829 TRUE 13
531.1311_5.287 TRUE 10
531.1447_4.141 TRUE 4
533.1257_4.426 TRUE 6
535.0762_5.453 TRUE 32
536.1898_4.583 TRUE 38
536.3209_5.3 TRUE 41
537.1508_5.278 TRUE 7
539.1147_5.072 TRUE 7
541.1395_0.742 TRUE 7
543.2074_5.421 TRUE 14
544.1472_4.514 TRUE 25
544.1789_6.025 TRUE 35
544.2886_5.154 TRUE 30
547.1102_3.005 TRUE 16
549.035_2.814 TRUE 24
549.0364_0.757 TRUE 6
549.1948_4.514 TRUE 12
550.2061_4.628 TRUE 35
551.0331_2.81 TRUE 1
551.2033_6.504 TRUE 13
553.0631_4.891 TRUE 22
553.1926_5.396 TRUE 26
555.0787_2.996 TRUE 17
555.1553_0.783 TRUE 25
556.1624_3.635 TRUE 32
557.1344_0.671 TRUE 1
557.2465_7.479 TRUE 32
558.136_3.478 TRUE 1
559.0435_3.584 TRUE 15
559.0453_4.234 TRUE 17
560.1364_2.889 TRUE 11
560.1365_2.971 TRUE 25
561.231_6.512 TRUE 8
562.1922_4.035 TRUE 17
565.0065_2.811 TRUE 19
565.0578_3.576 TRUE 11
565.0619_4.188 TRUE 2
565.137_2.579 TRUE 36
565.1563_4.799 TRUE 1
569.0928_2.988 TRUE 6
569.0956_3.38 TRUE 1
569.1299_4.178 TRUE 4
569.1307_3.754 TRUE 2
569.1751_3.441 TRUE 1
571.1469_3.618 TRUE 4
571.1476_4.081 TRUE 12
572.1076_0.784 TRUE 10
572.1094_3.326 TRUE 28
572.2105_4.512 TRUE 20
572.2528_4.339 TRUE 4
573.1087_0.695 TRUE 1
573.2393_7.26 TRUE 29
573.2395_6.305 TRUE 22
574.1142_2.883 TRUE 1
574.1523_2.913 TRUE 19
574.1534_3.396 TRUE 14
576.1317_0.792 TRUE 18
576.1384_0.705 TRUE 5
577.1184_2.969 TRUE 14
579.0437_2.578 TRUE 14
579.0457_0.796 TRUE 10
579.0995_6.236 TRUE 35
579.126_2.604 TRUE 9
579.2066_4.211 TRUE 14
580.1557_4.511 TRUE 35
583.0211_3.647 TRUE 5
583.1089_3.742 TRUE 1
583.1092_3.147 TRUE 9
584.0883_0.697 TRUE 5
584.1374_3.972 TRUE 19
585.0051_3.809 TRUE 4
585.0184_3.643 TRUE 2
585.0899_0.796 TRUE 12
589.3024_5.037 TRUE 21
590.1068_3.469 TRUE 5
590.1471_2.657 TRUE 37
591.2109_6.51 TRUE 6
591.3184_5.021 TRUE 16
593.1471_3.747 TRUE 21
593.1477_3.228 TRUE 35
593.3333_5.048 TRUE 15
594.0962_3.363 TRUE 1
594.3642_5.768 TRUE 4
596.1248_2.733 TRUE 1
599.1056_3.199 TRUE 26
600.2843_4.732 TRUE 4
600.982_3.815 TRUE 4
601.2255_5.243 TRUE 4
602.1667_4.638 TRUE 37
603.0611_5.431 TRUE 21
605.1126_3.023 TRUE 12
605.1462_3.238 TRUE 31
605.1484_3.739 TRUE 23
606.1191_4.053 TRUE 11
606.9991_3.815 TRUE 3
607.0749_3.657 TRUE 15
607.1267_3.483 TRUE 4
607.1628_3.711 TRUE 26
607.1633_3.738 TRUE 25
608.1059_3.3 TRUE 13
609.0591_2.577 TRUE 17
609.0726_3.66 TRUE 20
609.1423_0.802 TRUE 21
609.1484_2.937 TRUE 3
610.164_2.859 TRUE 2
611.0554_2.581 TRUE 25
611.069_3.647 TRUE 15
613.1932_6.507 TRUE 16
614.1849_4.02 TRUE 31
617.1836_4.515 TRUE 12
618.1838_3.802 TRUE 38
618.1913_4.649 TRUE 37
621.1797_5.389 TRUE 30
622.0984_3.522 TRUE 33
623.0319_2.6 TRUE 14
623.1618_2.946 TRUE 22
623.2016_6.501 TRUE 17
625.0354_3.814 TRUE 10
629.2176_6.511 TRUE 9
631.0532_3.815 TRUE 16
631.1154_0.686 TRUE 4
633.1142_3.808 TRUE 19
638.0934_3.724 TRUE 39
639.0783_3.758 TRUE 17
640.1347_3.515 TRUE 30
645.1099_2.832 TRUE 16
645.1108_0.776 TRUE 18
645.1887_2.968 TRUE 19
645.1893_2.881 TRUE 11
645.1896_3.451 TRUE 2
645.1901_2.522 TRUE 40
649.0893_3.836 TRUE 27
650.1898_2.57 TRUE 45
651.3856_5.28 TRUE 4
653.1834_2.294 TRUE 44
655.1071_3.826 TRUE 19
656.1287_4.025 TRUE 40
657.1659_3.876 TRUE 17
657.1681_4.216 TRUE 26
659.1239_2.825 TRUE 27
659.1667_2.763 TRUE 2
659.2045_2.918 TRUE 23
659.2057_3.452 TRUE 2
661.1248_0.679 TRUE 16
662.1454_4.018 TRUE 41
662.3153_5.383 TRUE 9
666.2108_3.475 TRUE 11
673.1446_3.853 TRUE 29
673.1455_4.198 TRUE 36
673.2558_7.365 TRUE 32
675.1192_0.802 TRUE 28
675.1222_2.643 TRUE 22
675.1511_4.19 TRUE 21
675.1659_2.308 TRUE 40
675.2009_2.65 TRUE 41
675.9686_3.302 TRUE 4
678.1113_4.032 TRUE 39
679.1604_4.197 TRUE 19
679.1625_3.856 TRUE 24
680.165_3.608 TRUE 37
680.2306_4.136 TRUE 42
681.2357_4.115 TRUE 32
681.985_3.302 TRUE 1
685.341_5.775 TRUE 7
689.1166_4.213 TRUE 22
690.3154_4.751 TRUE 13
691.1349_0.67 TRUE 17
691.188_6.507 TRUE 17
691.3175_4.507 TRUE 21
691.3179_4.171 TRUE 10
692.1776_3.461 TRUE 32
692.32_4.516 TRUE 24
710.0906_4.208 TRUE 43
713.2993_4.51 TRUE 16
714.3024_4.193 TRUE 28
714.3028_4.511 TRUE 26
73.0294_5.277 TRUE 15
741.1856_3.019 TRUE 40
741.1857_3.018 TRUE 40
741.1865_0.791 TRUE 36
745.1266_4.269 TRUE 35
745.1653_3.9 TRUE 38
747.2342_3.15 TRUE 44
747.2354_3.721 TRUE 40
747.3107_5.769 TRUE 21
751.1822_3.898 TRUE 37
753.328_5.771 TRUE 19
755.1981_3.389 TRUE 23
755.2012_3.03 TRUE 41
757.1576_0.789 TRUE 35
765.197_4.127 TRUE 29
769.2167_3.733 TRUE 41
769.2171_3.155 TRUE 43
771.1944_2.999 TRUE 41
771.1962_0.744 TRUE 18
775.1556_3.475 TRUE 1
779.2721_4.515 TRUE 31
785.1841_3.18 TRUE 44
785.1891_3.723 TRUE 40
785.2097_2.974 TRUE 39
792.3445_4.502 TRUE 41
795.2377_4.518 TRUE 30
800.1466_3.728 TRUE 38
800.2743_3.027 TRUE 43
801.154_3.74 TRUE 35
801.2049_2.656 TRUE 38
801.2549_4.519 TRUE 26
807.2393_4.206 TRUE 34
810.9784_3.814 TRUE 10
813.255_4.198 TRUE 31
814.2904_3.028 TRUE 42
814.3239_4.509 TRUE 42
815.077_4.202 TRUE 37
816.9958_3.812 TRUE 8
817.2886_4.438 TRUE 32
819.2194_3.7 TRUE 42
828.3048_3.061 TRUE 44
829.2715_2.727 TRUE 7
829.2715_2.758 TRUE 3
833.2468_4.513 TRUE 20
835.0489_2.8 TRUE 15
835.1973_3.718 TRUE 41
835.2887_2.754 TRUE 2
835.2888_2.725 TRUE 2
841.2146_3.693 TRUE 42
845.2477_4.186 TRUE 35
853.2516_4.121 TRUE 36
855.1197_2.99 TRUE 30
855.1238_0.789 TRUE 36
855.1239_0.785 TRUE 36
859.0857_3.824 TRUE 35
860.2066_3.476 TRUE 1
861.1356_3.001 TRUE 34
861.1404_0.799 TRUE 38
869.3936_6.15 TRUE 42
875.1494_2.993 TRUE 31
883.1412_3.819 TRUE 37
883.1453_3.774 TRUE 40
883.1498_3.145 TRUE 43
889.161_3.783 TRUE 39
889.1651_3.147 TRUE 41
891.2154_3.643 TRUE 42
891.2172_4.205 TRUE 36
892.2207_4.211 TRUE 36
896.2543_2.86 TRUE 18
907.1941_3.871 TRUE 42
907.1956_4.201 TRUE 37
908.2639_4.165 TRUE 43
913.2113_4.211 TRUE 34
913.2118_3.895 TRUE 40
913.214_3.531 TRUE 25
931.1224_2.809 TRUE 11
945.1645_3.008 TRUE 40
951.181_3.008 TRUE 39
973.198_3.133 TRUE 43
979.2122_3.736 TRUE 43
979.2124_3.136 TRUE 44
997.2507_3.723 TRUE 43

Remove NAs

Data imputation

# impute any missing values by replacing them with 1/2 of the lowest peak height value of a feature (i.e. in a row).
imputed_omicsdata <- omicsdata

imputed_omicsdata[] <- lapply(imputed_omicsdata, 
                              function(x) ifelse(is.na(x),
                                                 min(x, na.rm = TRUE)/2, x))

dim(imputed_omicsdata)
## [1] 1409   58

Are there any NAs?

imputed_omicsdata %>%
  is.na() %>%
  sum()
## [1] 0
# imputations worked

Create new imputed tidy datasets

# create long df for imputed omics df
imputed_omicsdata_tidy <- imputed_omicsdata %>%
  pivot_longer(cols = 3:ncol(.),
               names_to = "sample_ID",
               values_to = "peak_height")

# combine meta and imputed omics dfs
imp_meta_omics <- full_join(imputed_omicsdata_tidy,
                         metadata,
                         by = c("sample_ID" = "sample_ID"))

# separate mz and rt
imp_meta_omics_sep <- imp_meta_omics %>%
  separate(col = mz_rt,
           into = c("mz", "rt"),
           sep = "_") 

# convert columns to correct type
imp_meta_omics_sep$mz <- as.numeric(imp_meta_omics_sep$mz)
imp_meta_omics_sep$rt <- as.numeric(imp_meta_omics_sep$rt)
imp_meta_omics_sep$Subject <- as.character(imp_meta_omics_sep$Subject)
imp_meta_omics_sep$Intervention <- as.character(imp_meta_omics_sep$Intervention)

Notame feature reduction

vignette for reference

#browseVignettes("notame")

Let’s look at what masses come up at each RT again

# rt vs mz plot
imp_meta_omics_sep %>%
  ggplot(aes(x = rt, y = mz)) +
  geom_point() +
  theme_minimal() +
  labs(x = "RT (min)",
       y = "mz")

There are several points that are at the same RT, meaning they could be coming from the same compound. We’ll run notame clustering to collapse features coming from one mass into one feature.

Data restructuring for notame

# create features list from imputed data set to only include unique feature ID's (mz_rt), mz and RT
features <- imp_meta_omics_sep %>%
  cbind(imp_meta_omics$mz_rt) %>%
  rename("mz_rt" = "imp_meta_omics$mz_rt") %>%
  dplyr::select(c(mz_rt, mz, rt)) %>%
  distinct() # remove the duplicate rows

# create a second data frame which is just imp_meta_omics restructured to another wide format
data_notame <- data.frame(imputed_omicsdata %>%
                            dplyr::select(-row_ID) %>%
                            t())

data_notame <- data_notame %>%
  tibble::rownames_to_column() %>% # change samples from rownames to its own column
  row_to_names(row_number = 1) # change the feature IDs (mz_rt) from first row obs into column names

Check structures

# check if mz and rt are numeric
str(features)
## 'data.frame':    1409 obs. of  3 variables:
##  $ mz_rt: chr  "236.065_0.603" "168.0777_0.606" "154.0621_0.609" "124.0072_0.616" ...
##  $ mz   : num  236 168 154 124 193 ...
##  $ rt   : num  0.603 0.606 0.609 0.616 0.617 0.622 0.654 0.627 0.629 0.629 ...
# check if results are numeric
head(data_notame)
##               mz_rt 236.065_0.603 168.0777_0.606 154.0621_0.609 124.0072_0.616
## 2 6111_U4_C18NEG_42     4148.1560      6707.0720    304457.6000     63058.5270
## 3 6101_U2_C18NEG_30    65118.8000     81841.7800    112404.4300     22063.8480
## 4 6102_U1_C18NEG_26    16741.8500     29358.3710    168966.0200     56236.6450
## 5 6110_U2_C18NEG_34     16350.678      19073.940      67706.220      22557.037
## 6 6105_U4_C18NEG_47    46170.5080     59856.3360    208992.6000     56521.9000
## 7 6103_U4_C18NEG_53    62220.0470     90745.4140     92892.3000      4167.1500
##   193.0351_0.617 239.1144_0.622 275.056_0.654 195.051_0.627 215.0326_0.629
## 2    110661.2340      4148.8400     7621.4624   175922.4200     83845.8400
## 3     50736.0040     13944.5030    10538.4540   222889.0500    112802.2000
## 4     54822.6170     13815.2390    14388.4710   185187.0500     93607.8900
## 5      27333.799       2379.748     12803.501     97982.840      72868.770
## 6     51904.7270     13813.5900    54594.4060   119151.6250     87575.5400
## 7     81048.3900      7217.6150    11000.1140   109782.7340     56883.4100
##   219.0457_0.629 217.0486_0.63 245.0433_0.63 165.0405_0.634 187.0383_0.634
## 2     14710.4650    42995.4000    22739.1500     84372.0550     17612.5400
## 3     21731.1640    67756.3750    13593.9990    129945.7300     16133.5760
## 4     16508.4900    46851.0430    11583.4240     62910.2600     16036.7840
## 5      29380.190     84598.010      9735.333      99338.500      14608.523
## 6     18316.0660    49151.7800    15733.0520     81935.9700     21083.0700
## 7     25524.6640    80661.0600    13465.1520     79159.3200     22429.1930
##   265.0732_0.64 235.057_0.641 135.0295_0.64 277.0852_0.658 179.0556_0.643
## 2     3554.0090    10549.7070   215612.5300      1896.8904     49858.5800
## 3     2770.6050     7714.5710   161603.8300      1777.6233     69490.1100
## 4     3590.4802    13949.0800   180550.1400      1650.3148     54854.7340
## 5      2833.232      2971.846    118229.020       1515.141      79040.130
## 6     2556.3813     5410.3740   180194.6700      1872.5413     66115.3360
## 7     1964.5671     4466.6120   110849.0160      1644.7844     34921.9960
##   149.0089_0.649 547.1106_0.67 149.0452_0.654 262.0364_0.654 321.0625_0.656
## 2     59227.8160     1480.1112     53766.4000     24966.1520     10882.5720
## 3     94413.3700     1979.9187     55440.1950     16337.3920     25443.6100
## 4      8282.0510     2248.3880     50711.7000     22093.7560     18592.2230
## 5      14616.016      1228.672      64062.992      35391.867       8272.857
## 6      3099.2580     1445.8310     53487.2930     18773.7660     11248.7210
## 7      8325.3300     1888.4089     32421.2910     79602.7660      6367.6733
##   174.0405_0.655 291.0683_0.654 167.0208_0.657 261.039_0.66 494.1144_0.666
## 2     21986.1740      3920.8584    391255.3400   21221.8500      1378.3564
## 3     22722.2850      3144.5125    352507.1600   33641.8670      1788.4076
## 4     22790.8480      2798.2664    404390.6600   20416.8710      1299.2500
## 5      16850.508       4256.903     614587.000    31758.988       2543.849
## 6     39613.5160      3506.3880    847425.0000   20707.1170    111281.9900
## 7     16621.3980      3902.8433    378931.6000   55393.7800      1669.5349
##   308.0983_0.658 247.062_0.659 151.0066_0.66 363.0756_0.658 277.052_0.659
## 2     17307.6640    25386.6520     8439.7650     11992.5160     8896.5530
## 3     15982.8930    19120.8850    11509.5250     37390.3870     5537.2305
## 4     21815.3630    39358.4380    12856.6350     36373.7030     8356.7295
## 5      11636.194     16349.409     18192.979      21776.125     12400.021
## 6     15389.8410    27319.9410    10566.3160     19312.0000     7137.5390
## 7     10550.2650     6860.6650    17224.1970     12659.9000     7859.8510
##   262.0286_0.664 287.0195_0.66 290.0877_0.662 287.0526_0.66 263.0573_0.662
## 2     21046.4430    14930.0260      8933.0620     7753.7603     15739.0200
## 3     33996.1300     7956.3467      4929.5070     7766.6333     17729.2660
## 4     27414.6350     9422.4240      8266.6430     8011.1235     17002.3710
## 5      33476.040     14959.646       6859.244      5627.218      11740.802
## 6     22452.0600    10694.9580      9186.9240     6865.4946     17202.9410
## 7     27361.5570    14248.4060      4465.6550     5874.4560      6983.8990
##   253.9903_0.661 188.0021_0.665 337.0436_0.684 300.039_0.661 461.0646_0.667
## 2     11407.4400     18472.0530       500.0201    22658.5160      1432.1871
## 3      7760.9200     56319.2970      4015.7778    24527.4630      3294.4424
## 4     11899.6250     12348.4490      4727.2830    27361.3520      2893.5520
## 5       8558.486      17131.700       3151.240     12541.503       1607.297
## 6      9068.2350     20309.2770      2994.2952    32732.2950     25902.2270
## 7     11395.0340     10298.0230      3248.6460    13565.7080      1928.0118
##   463.0657_0.669 295.0277_0.684 379.0686_0.661 491.0719_0.671 247.9959_0.702
## 2      1728.1648      3877.8640     19467.2250      1976.4014      9789.6280
## 3      3113.4307      3143.3470    126441.6600      1952.8645     26527.5180
## 4      2402.4695      4319.6396     77050.3800      1530.9227      9697.3850
## 5       1732.253       2029.218      27472.498       1314.838      11553.704
## 6      3606.9004      3085.3591     23418.0000      2655.3190      7443.9090
## 7      2762.2295      2343.9160     23161.1040      1687.4609      6933.9126
##   243.0617_0.662 351.0566_0.663 373.0567_0.663 557.1344_0.671 351.0199_0.667
## 2     30853.5410     32206.3120      7283.2095      1498.1433      3787.9624
## 3     23710.4650     19565.9750     11812.0510      1949.1074     15992.7295
## 4     34791.4770     32150.5210     10058.4360      1646.7344     18490.9430
## 5      29982.627      14812.694       3590.756       1011.158       6557.495
## 6     31734.1230     32706.4100      5388.3020      5968.7896      4365.3830
## 7     22360.3120     14061.2300      4312.7075      1533.3982      9119.1740
##   323.0417_0.656 396.025_0.663 293.0301_0.685 254.9816_0.664 389.0688_0.663
## 2      4656.8800    36380.0300      4546.7780     72849.4100     10816.2230
## 3      5719.6772    32557.7970      7261.9634     78899.5800     26806.1270
## 4      2628.1118    22872.4800      6610.0260    112633.5400     24806.8180
## 5       3849.919      9591.220       2736.389      38314.094       8937.354
## 6      6543.9297    21491.2710     34597.0470     60320.0200     12854.0020
## 7      2698.0030    14241.1330     11340.4300     33674.3950      5623.1020
##   328.0474_0.665 275.0569_0.663 445.0903_0.667 289.0702_0.663 293.0676_0.65
## 2      7255.3096     11471.7020      8148.3910      9563.9830    10029.2730
## 3      6964.9727     10538.4540     18728.7900      6446.3804    14552.4390
## 4      7752.7600     14388.4710     18968.0300      9187.5260    10567.3660
## 5       4605.590      12803.501       4771.278       8563.401     10739.345
## 6      6006.5950     54594.4060     10714.8250      7585.1740    12973.7400
## 7      4763.8040     11000.1140      7042.9060      4399.0260     8009.9320
##   541.1207_0.663 227.9967_0.668 395.0628_0.675 405.0648_0.668 398.0412_0.681
## 2      3575.8132     72074.0860     12726.3030      6694.6963      2889.9944
## 3     10819.1610     72658.7400     53118.3320     34385.7070      2812.6152
## 4      8255.3910     45834.5980     31870.0040     23018.1110      3777.0356
## 5       2170.591      19956.219      15352.704       8227.380       8131.128
## 6      5221.6914     34732.7850     15376.1310     10411.9450    268753.4700
## 7     15615.9230     26029.3890     23932.9200      7877.4985      4579.8630
##   231.0308_0.666 289.0528_0.664 375.054_0.665 225.0623_0.658 360.0729_0.672
## 2     12636.0080      9199.4980     8978.2620      3959.2925      9899.3890
## 3     24950.5680      6697.9746    29421.7200      7518.0060     31006.0350
## 4     23874.4650      7208.1510    20557.3120     23502.8870     24456.6840
## 5      11439.280       7413.016      9835.665       2361.148       8538.419
## 6     18868.8100      7997.8090     9912.5580     17117.3850     16410.5250
## 7     13173.4400      4967.0054     6042.7983      8349.9020      6997.9180
##   216.0196_0.667 261.0232_0.668 260.0254_0.667 347.059_0.674 307.0116_0.682
## 2     58641.7500    173269.6200    117672.5900    10468.3830      1521.8510
## 3    178319.8600    340208.4000    203477.6100    30192.1100      2271.5900
## 4    157426.6400    316508.0000    211304.9400    22496.0840      2083.1924
## 5      69920.414     273429.530     165951.300     23684.217       2951.281
## 6     80708.1640    229276.4700    170327.8100    30482.3240      5467.7190
## 7    124550.2400    317140.1000    192901.4400    22400.6250      6189.2007
##   356.031_0.667 129.0191_0.669 331.0274_0.668 85.0291_0.668 345.0438_0.668
## 2     6124.0454    236005.0800     21954.3520    84031.9300     37873.7230
## 3    18968.3570    329562.6600     19095.8890   110775.6500     72203.1600
## 4     4514.1060    312758.8400     18446.1100   116002.2600    108276.0200
## 5      6339.006     229952.780      24770.727     83288.960      26113.564
## 6     4446.5310    295936.3400     12468.6190   108941.4450     40104.8100
## 7     7339.7754    297184.9400     40800.0550    91490.1700     15130.1990
##   336.0493_0.662 217.0162_0.671 349.059_0.669 371.0241_0.671 359.0566_0.67
## 2     21169.9020    254774.3800    26902.2930      3997.8467    11019.8160
## 3     20621.5720    666478.4400    74113.7340     10361.5530    15147.1770
## 4     20894.6400    575733.5000    41118.1640      9828.1280    17454.2360
## 5      41425.480     245340.300     27493.342       2132.876      8432.428
## 6     50127.7600    298069.7000    27595.8140      2971.7940    11856.2480
## 7     21760.6640    460064.8800    19456.7030      5593.3013     9593.0750
##   475.0782_0.667 432.2024_0.669 246.0075_0.694 304.0334_0.669 305.0302_0.67
## 2      2270.4578       500.0201      3329.6702    104681.8050   147793.8300
## 3      4959.0230       502.2117      3286.5608    137142.9700   184741.3800
## 4      4681.2690       500.2725      2274.4524    153807.8800   189132.4200
## 5       2710.678        500.000       5420.414     136424.440    180358.340
## 6      2697.7890      2117.2908    131341.4200    107177.8700   153268.7800
## 7      3094.5256       502.2908      2874.5503    163900.8400   203005.8400
##   431.0534_0.666 274.0026_0.671 230.0493_0.666 550.1307_0.664 173.0089_0.672
## 2      5363.1494      7800.1600      2385.2058      1647.1179    387825.7500
## 3     11396.4760     56630.1370      2519.8853      2237.8118    498700.2200
## 4      8234.1190      6476.7000      2632.7715      2314.8562    448936.1200
## 5       4677.412      16356.477       2170.819       1977.353     354741.720
## 6     10177.3270      8834.4010     24179.0920      1834.4805    437558.3400
## 7      5358.1304     28521.2150      2795.7686      1410.5865    458486.2500
##   526.0995_0.675 232.005_0.705 330.0291_0.673 410.0417_0.684 301.0547_0.665
## 2      1524.6020     4428.5107     21943.5060     23547.4300      4664.0024
## 3      1872.9838     6473.8890     19465.5020     12721.8960      3882.1885
## 4      1563.8273     4951.8720     17778.1050      2655.2402      4994.1500
## 5       2444.157      3688.011      33552.070       2591.827       3447.831
## 6    141841.3300    48300.5200     17316.7400      5945.2915     29855.4650
## 7      1605.1570     2360.2800     46560.2300      5217.2180     17143.3900
##   274.0396_0.676 691.1349_0.67 247.9921_0.704 318.064_0.674 315.0338_0.673
## 2     12929.9360     1078.6835      9789.6280     7785.8174      8878.0050
## 3     12111.8170      502.2117     26527.5180    10388.0580     18749.4880
## 4     11576.7710     1015.5614      9697.3850    10731.3760     22687.9200
## 5      12632.411      1233.036      11697.337      8062.857      13496.725
## 6     13121.7830     2851.9258      4977.2817     7053.5703     11470.7850
## 7     10873.2240     1045.9828      7218.6430     5680.6353     12024.8520
##   320.0597_0.683 277.0349_0.667 338.1134_0.651 462.0712_0.669 262.9863_0.693
## 2     28297.3900      4416.8910      1313.6183      1579.1161      2423.9880
## 3     30200.4860      9214.7320      1212.6208      3230.3440      3717.8792
## 4     21522.0180      4337.5625      1055.6311      2531.1738      2146.2593
## 5      12583.481       4946.517       1185.092       1835.917       3136.109
## 6     15244.0340      5060.5557      1195.8912      6311.4970      4296.7314
## 7     13343.0760      3963.0884      1609.4896      1764.8909      1933.5741
##   264.9884_0.68 399.0203_0.683 344.0448_0.677 303.0365_0.684 365.0528_0.68
## 2   113964.4200      6803.4350     24700.0740     28172.1950     9602.5650
## 3   112022.4400     33700.0700     50612.1680     37815.9730    33895.2850
## 4   131204.6700     27662.9690     58156.9180     56812.6330    11426.0930
## 5     57290.050      19677.950      17857.010      38021.715     20620.957
## 6   154751.2000     12679.5990     29855.4840     48059.8830    13932.0040
## 7    95716.9800     37637.4400     17081.1860     42261.2340    10952.6470
##   307.0326_0.669 246.0433_0.669 275.0216_0.69 288.0231_0.685 278.0698_0.683
## 2      7651.1260      6301.9400    21675.7010      2171.0352     11119.6875
## 3     12801.0280      4495.1990    48333.0800      2594.4520     12375.6870
## 4      9367.3400      5753.6040    46051.7800      3280.4750      9924.6080
## 5      10809.471       6208.385     27149.668       7146.336      12335.614
## 6      6298.2440      9574.2030    52112.7900      2866.7534      8318.3960
## 7     13549.3100      6263.1255    27632.2200      6015.0310     10469.7580
##   218.9961_0.686 288.0398_0.684 417.0297_0.684 191.0212_0.699 509.0384_0.699
## 2     29057.5620      5254.1343     36776.4770   4271292.5000      9943.6940
## 3     26525.7500     14368.8700     74917.3500   5971350.0000     14769.3430
## 4     17512.9430     12189.8940     71361.4600   5661172.0000       500.2725
## 5      69096.266       6233.876      46809.650    5800687.000       1152.252
## 6     49340.2930     11836.9680     45453.7730   6219833.0000       500.0225
## 7     45610.5160      8530.9200     80406.5100   5948255.5000      1457.8425
##   265.0186_0.67 289.0363_0.688 300.0195_0.687 661.1248_0.679 436.092_0.669
## 2     5677.8240     21162.4040      6127.3200       500.0201     1625.5333
## 3     5042.4697     38123.3830     16401.1930      1504.8782     2302.1897
## 4     5974.3800     38736.9300     17186.1000       500.2725     2267.7693
## 5      9163.784      25467.670      14968.058        500.000       500.000
## 6    10135.6860     32850.7230     10955.5780      1238.6486     1547.0419
## 7     9497.1460     29641.8030     29918.4690      1207.5732     6623.4727
##   480.0818_0.682 419.1179_0.71 361.0578_0.686 242.0115_0.695 385.0951_0.677
## 2      1683.9724     4461.0713     22139.1600     76768.0000      1877.1893
## 3      2538.0703     5500.9530     37329.9960     36109.5940      1451.5579
## 4      2445.1873     3409.8867     37392.1130      3506.0010      1697.6648
## 5       1214.369      2178.181      13581.197       4123.630       1439.647
## 6      3476.8518     5135.9530     37359.7400      6403.4080      1721.6453
## 7      1833.8857     4428.6490     22033.4470      4559.3870      1516.4857
##   487.0783_0.683 145.0141_0.693 631.1154_0.686 302.0532_0.694 439.056_0.753
## 2      2089.9312     32694.4600      1107.0416     19273.2070     3057.6484
## 3      3229.2050     27103.3890       502.2117     17813.2620     2580.3770
## 4      1752.8016     39290.8360      1138.2074     25512.5590     1636.4819
## 5       1377.679      18083.127        500.000      11645.039      1544.656
## 6      4552.8564     29402.8220      1328.6703     18164.5120     2300.6042
## 7      2126.6877     48293.8800      1027.8997     12906.6530     3150.1926
##   418.1123_0.717 377.0526_0.697 296.9824_0.699 218.0492_0.684 332.0663_0.696
## 2      9240.7580     16165.5120    172356.9800      6156.4100     14352.7540
## 3     27600.7580     22953.5960    261831.1000     86759.5400     11513.1870
## 4      8733.8000     17618.7130    260996.6400      9987.9600     14640.1580
## 5      10812.652      18719.190     141970.620      20545.275      13763.928
## 6     20853.9500     24687.9770    211734.0300      9220.2070     11579.3830
## 7      9241.5000     10513.1230    254820.1000     32551.0740     10625.5540
##   133.0504_0.696 405.0469_0.697 349.0207_0.696 295.9856_0.697 527.1244_0.676
## 2     58184.8870     12246.4560      9556.4840     44239.1370      1520.0815
## 3     19859.4530     20985.3090     21081.8090     68629.1500      1453.9219
## 4     26414.5860     20242.2850      2572.4692     71051.2900      1478.5604
## 5      39528.965      22405.697       2777.294      36044.312       3086.462
## 6     27557.3850     21118.8800      6357.4443     65073.4400      6357.5200
## 7     40625.3830     17682.3480      1964.0250     64934.2340      1952.4695
##   333.0634_0.694 392.0363_0.698 570.0904_0.696 394.06_0.685 144.03_0.697
## 2     50376.0160     79644.3200      1192.5267    5016.3830   20549.5370
## 3     37198.0000    211934.0500      1945.4053   17367.4360   12359.0590
## 4     45505.5430    195954.0600      1329.6543   10407.0420   17822.9410
## 5      36155.800     111624.734       1486.894    11816.269    14422.314
## 6     44392.8600    216734.2000      1282.2678    6937.3223   18463.6300
## 7     27413.2900    155174.6400      4704.6973   47895.9340   12584.4480
##   391.0332_0.698 296.0197_0.697 191.0523_0.699 319.0474_0.696 347.0424_0.697
## 2    493382.7800      2065.5852    128032.3000    228269.9700     21344.0270
## 3   1598408.4000      1706.8990    127600.2340    207429.1600     76096.5860
## 4   1336129.4000      2461.0554    114005.5700    330992.1000     35181.4700
## 5     737906.100       1892.521     113870.650     140869.950      32082.860
## 6   1615176.4000      1539.0139    104292.5550    204233.7800     27753.1290
## 7    654401.1000      2343.5354    148865.5500     66676.6400     25022.4880
##   316.0285_0.688 191.0203_0.697 192.0224_0.702 320.05_0.698 397.0582_0.701
## 2      2335.3386   4271292.5000    244912.1200   32589.7360     17310.6840
## 3     17480.0800   5971350.0000    425455.5300   30232.3830     23589.9060
## 4      2175.9163   5661172.0000    382120.6600   42970.6250     27858.7800
## 5       3997.198    5800687.000     510942.700    19847.176      12179.876
## 6      2973.0570   6219833.0000    455817.3400   31299.6930     20153.5600
## 7      5113.0913   5006305.0000    402905.8800   11344.9470     14181.0670
##   277.0021_0.707 206.9961_0.7 78.9585_0.702 468.0451_0.696 389.0528_0.7
## 2      5372.9487   52142.7700   211444.3600      1784.0773   26811.8100
## 3     10250.4440  135124.9400   170654.5800      3806.7124   41203.8750
## 4      3510.5737   62368.0500   219096.4800      1811.3746   37091.0940
## 5       2991.485    68935.340    103807.100       5802.637    14793.726
## 6     12172.9250   78885.2600   189029.5500      3278.9207   24250.2680
## 7      4614.7040   83022.6900   134074.3300     11802.0830   21201.1930
##   246.9913_0.705 161.988_0.685 154.9984_0.703 246.9916_0.705 111.0085_0.703
## 2     81910.3050      500.0201     29219.2500     81910.3050    406520.7800
## 3    229988.0200   367110.0000     25145.9770    229988.0200    661080.1000
## 4     73131.0160     1071.1361     22682.8790     73131.0160    603447.7500
## 5      85781.720      9216.258      15626.091      85781.720     626823.200
## 6     32668.5900     3869.4077     21313.9730     32668.5900    730377.2500
## 7     41336.6950      502.2908     15210.5540     41336.6950    634365.5000
##   216.981_0.709 524.0845_0.705 427.0674_0.685 379.0336_0.708 367.0282_0.707
## 2    60342.5200      6745.0120      2228.5696     15370.5170     23634.7270
## 3   105255.5160      6333.3228      2495.8103     43376.4340     15567.3000
## 4    42331.0080      5804.3696      2213.4170     19405.0370     15214.2550
## 5     48391.125       1876.439       2423.096      12354.700      18005.928
## 6   127584.3300      6225.2646      4249.3784     14402.4060     17370.8000
## 7   101494.0860     17141.7000      3508.2046     23399.6170      7441.6300
##   543.0792_0.704 303.0532_0.705 225.0424_0.708 232.9759_0.708 423.0571_0.703
## 2      9441.3060     33108.5700      1438.5791     33282.6800      6167.0180
## 3      3902.8647     45647.2970      1193.7743     69228.0100     44044.9650
## 4      6051.2640     66692.6950      3760.6030     18993.3800     12221.2400
## 5       3249.885      41528.293       1397.930      41496.670       8118.665
## 6      2081.1350     45342.8480      1462.1958     23995.3670     45888.8950
## 7      7330.2363     37758.7660      3271.2617     36132.2150     18807.6430
##   347.079_0.706 146.0456_0.708 335.0468_0.663 409.0428_0.71 559.1102_0.68
## 2    28352.6700     43757.4770     41948.9730     5476.0980     2089.9404
## 3    33714.1100     40495.8870    150743.6400    29388.1860     2526.5820
## 4    31311.3070     32793.0400    156294.3900     6958.3896     3685.1807
## 5     29898.604      29624.328     300009.060      7829.560      1578.039
## 6    27567.2190     58301.5940     55818.1170    30897.6580    18702.7520
## 7    20342.1930     34810.2200     29560.6330    12070.7570     2207.5564
##   259.057_0.712 377.0353_0.713 263.0249_0.69 370.0786_0.733 499.0756_0.705
## 2    20013.4550     19127.5500    16781.0500      3990.0160      1729.8732
## 3     7821.5845     47368.9000    22301.0590      3680.2607      1900.2081
## 4    16123.0690     43134.0660    19644.1150      3496.4058      1986.4675
## 5      8619.797      27326.040     25428.926       2746.170       3551.452
## 6    13171.8270     31398.5940   150805.6600      3453.3310      2036.7467
## 7     5871.9990     24756.8480    11801.4420     20682.4200      3225.7664
##   310.9761_0.719 291.0345_0.717 576.1384_0.705 424.0493_0.721 479.0535_0.737
## 2     55626.6900     22876.6720       500.0201     23092.5080      1715.2510
## 3     73050.5550     31448.6480      1191.1466     18950.0430      1446.0248
## 4     86704.8360     29264.3400      1416.7020     10549.7740      2122.0615
## 5     102870.610      36290.960       1044.005       8377.034       1198.108
## 6     77251.2340     30482.2050      2239.2495     19477.7250     15126.6670
## 7     63273.5600     18923.0550      1260.1454      9328.3270      1831.1595
##   405.0285_0.72 230.0139_0.763 418.1149_0.722 303.0715_0.727 258.0424_0.699
## 2    34730.8800     26786.1720      9386.8560     25215.3240     11518.4375
## 3    96463.8700    173433.3400     27600.7580     30536.9020      7196.1730
## 4    66619.4450      7272.1816     19513.6000     19851.1050      9132.3030
## 5    213321.170      31827.668      10812.652      31402.518       9889.745
## 6    91735.6600   1094556.0000     20853.9500     40252.7540      6244.5160
## 7   129526.1200     11000.6190      9241.5000     44833.5470      6408.3320
##   549.0364_0.757 485.0955_0.681 303.0712_0.728 584.0883_0.697 573.1087_0.695
## 2      1020.5068      1766.9160     25215.3240      1191.6068       500.0201
## 3      1264.0416      1969.4229     30536.9020      1020.0275      1564.3948
## 4       500.2725      2078.9668     19851.1050      1133.7792      1315.0110
## 5       1164.973       1888.713      31402.518        500.000       1212.008
## 6      1231.2000      2009.3416     40252.7540      1079.5731      5382.2840
## 7       502.2908      1626.0334     44833.5470      2581.0370      1605.2543
##   422.0501_0.727 218.1032_0.748 247.0277_0.755 175.0241_0.753 194.046_0.798
## 2      8559.4010     13785.0200     11656.1640     18934.5270    85857.4900
## 3      6211.2007     19853.5980     18421.3830      6923.8100   266435.7800
## 4      4910.7686     13012.5740      7439.3916      5896.4290   123845.4200
## 5       3516.970      11549.192      24980.500       9438.662    212657.140
## 6     11584.1590     19291.5940     12509.6540     23864.9260   100885.5550
## 7     13048.5540     14139.4060     40544.0820     16835.7190   788230.6000
##   137.0248_0.733 191.0524_0.713 205.0352_0.76 343.0666_0.756 457.0689_0.726
## 2      3329.1177    128032.3000    73709.0000     23513.5180      2072.7050
## 3      4851.5300    127600.2340    39592.6520      9829.7160      1468.5693
## 4      2741.8123    114005.5700    47546.7660      9161.8260      1876.0030
## 5       7323.842     113870.650     44800.914       4856.681       1510.607
## 6      5956.7850    104292.5550    87591.4000      3503.1530     14086.1220
## 7     13008.8050    126887.1900    49713.2460     19257.4450      2431.9690
##   147.0298_0.76 191.0267_0.755 389.1038_0.786 161.0454_0.768 855.1239_0.785
## 2    95357.3100     35133.3700      1946.2800     57661.7420       500.0201
## 3   135842.7200     34729.1130     20584.5350     53200.0800       502.2117
## 4    70525.4400     34061.3120      2451.4397     53321.2100       500.2725
## 5     93652.484      35948.690       5237.721      50538.830        500.000
## 6    72001.3750     32916.3400     17286.3790     49353.9900      1048.2848
## 7    86855.1900     41353.9380     44659.9920     62155.1170       502.2908
##   541.1395_0.742 446.038_0.779 177.0225_0.776 324.0723_0.776 208.0646_0.766
## 2       500.0201     1658.7102     40995.2600     68043.3300      8426.6540
## 3      1242.6123     2290.6530     46588.3870     57325.2270      8188.7827
## 4      1000.5450     1217.4502     47735.3200     34703.0800      4456.1580
## 5        500.000      2121.245      39499.200      22483.912       2965.903
## 6      2088.4001    38099.4000     43068.2660     42821.1200      6748.7620
## 7      1661.0409     2480.7651     39971.6600    163982.8800      5671.8830
##   757.1576_0.789 301.0563_0.774 1153.2827_0.789 144.0665_0.781 645.1108_0.776
## 2       500.0201      6962.6953        500.0201     51786.9380      1206.7730
## 3       502.2117      6924.0005        502.2117     34476.7150      1019.9524
## 4       500.2725      4752.0557        500.2725     42257.6300       500.2725
## 5        500.000       2565.265         500.000      28798.984        500.000
## 6      1481.4994     29855.4650        500.0225     35803.4180      1585.2367
## 7      1157.0000     14510.4170        502.2908     27630.0680      1248.0000
##   165.0409_0.76 555.1553_0.783 245.1137_0.783 299.1247_0.784 364.0954_0.768
## 2    19419.2190       500.0201     13970.7210      8509.2240      1520.5922
## 3    17942.3710      1373.9762     30608.9240     12404.6730      1945.4222
## 4    28789.5300       500.2725     14505.4890      9157.6420      1601.9349
## 5     17728.719        500.000       6751.876      11656.090       1604.762
## 6    19712.3380      2497.3308     20732.1620     11879.6970      1327.7667
## 7    31254.9900      1189.3865     20329.3360     14583.1960      2468.3755
##   357.0823_0.779 741.1865_0.791 195.0512_0.787 360.1406_0.756 315.0713_0.751
## 2      7354.2656       500.0201     29134.7600      2263.6921      3304.1526
## 3      4200.4453       502.2117     47263.9060      2437.9482      2395.3720
## 4      6396.3623       500.2725     73776.2340      2458.7043      2043.2003
## 5       7101.456        500.000      30895.540       1365.453       2464.498
## 6      4792.8300      2534.9316     70425.2900      2573.9521      2448.0850
## 7     34339.9300       502.2908    215220.3800      1706.7955      4512.0690
##   319.1032_0.789 274.039_0.769 275.0221_0.754 359.0971_0.789 204.9812_0.795
## 2     22483.9790    18499.6270     10979.9460      2741.6162     53297.8200
## 3     11512.6950    11861.7780     24789.8850      1889.9879     41683.9450
## 4     14819.9300    14183.1560     32565.0140      2321.9690     70088.2660
## 5      17165.516     11632.619      24247.920       1814.458      51446.676
## 6     17031.8540    11086.0630     20019.9770    168268.1700    104181.9600
## 7     25862.6720    13121.2560     16547.5940      4055.0860    110612.6800
##   216.9808_0.715 771.1962_0.744 231.9926_0.79 356.0987_0.796 261.0072_0.769
## 2     60342.5200      1552.0686    11582.2560      2576.5925     30946.5700
## 3    105255.5160       502.2117    47461.7930      1573.0795     68774.0800
## 4     42331.0080       500.2725    25121.1290      3326.7440     43543.4260
## 5      48391.125        500.000     17798.205       1769.738      47227.617
## 6    127584.3300      1172.4828    13655.8780     10235.5205     27382.3340
## 7    101494.0860      1336.9645     5845.7850      2619.3972    171906.8100
##   391.1124_0.79 194.0546_0.797 227.9971_0.795 502.2071_0.806 415.1607_0.797
## 2     2238.7780      8675.9680     66358.0000       500.0201      2236.2551
## 3     2061.1780     18655.8200     81859.7900       502.2117      6679.4690
## 4     7646.0225      9949.7650     50406.9200       500.2725      2686.2230
## 5      1121.088      15096.397      15420.121        500.000       2700.322
## 6    10854.7720      8582.5820     30611.0900       500.0225      2364.1380
## 7    36579.4600     38545.4500     44149.2030       502.2908      2757.7136
##   361.1497_0.795 303.0177_0.795 223.0623_0.802 189.9895_0.816 375.1294_0.798
## 2      4447.7236      7302.1000      1144.6578     10736.8950      7363.2485
## 3     21850.8500     14427.2920      1835.3335     19163.7540     28331.7320
## 4      7930.0034     11333.2390      1118.6530     13191.9130     14353.0000
## 5       3655.935       8702.116       1202.347      25967.732       4386.368
## 6     16740.7930     42028.5620      3526.4907      9589.3860     18520.5740
## 7     32214.5300     36042.9260      2448.0690     19991.5940     53226.5940
##   276.0018_0.763 168.0301_0.797 399.0923_0.803 373.0779_0.78 227.1036_0.798
## 2      1157.8638     36358.3050      2278.4138     2605.3170     12904.6310
## 3      3154.7210     50863.8120      2017.6725     1747.8801     25581.7870
## 4      2522.9702     48530.4400      2583.0005     3284.8716     15256.9740
## 5       9869.246      61832.360       2220.696      1572.836       7753.059
## 6     44971.0430     39271.9800      5329.5500     5729.1904     16874.2710
## 7      3434.5747     43985.0980      6257.0254     6013.5800     21659.8850
##   479.0506_0.791 411.0787_0.764 326.0866_0.798 579.0457_0.796 194.0459_0.799
## 2       500.0201      4575.4520      8678.5530      1057.3336     85857.4900
## 3      1241.6469      4025.5898     20011.0160      1393.7997    266435.7800
## 4      1161.4454      1995.3750      1661.0067      1024.1156    123845.4200
## 5       1198.108       3552.362      14005.729        500.000     212657.140
## 6     15126.6670      2133.0980    524976.2500      1327.6630    100885.5550
## 7      1831.1595     30593.5720      5637.0615      1434.3068    788230.6000
##   861.1404_0.799 1123.2723_0.775 516.2234_0.803 230.9967_0.757 282.0473_0.802
## 2       500.0201        500.0201       500.0201     26454.2830      5276.6020
## 3       502.2117        502.2117       502.2117     48949.5080     43431.7730
## 4       500.2725        500.2725       500.2725     37910.1800     10161.4830
## 5        500.000         500.000        500.000      30236.193      17003.963
## 6      1474.1422        500.0225       500.0225     28247.5180     34313.3100
## 7       502.2908       1337.8524       502.2908     34517.1330     25865.1460
##   182.0076_0.788 292.0225_0.799 258.9916_0.797 182.0282_0.77 219.0508_0.792
## 2      1016.8692     15912.0620      9436.8930      500.0201      2348.0452
## 3      1093.6797     38215.8320     27677.5310      502.2117      9981.2650
## 4      1148.9729     15948.4610      8003.4120     3617.5800      2965.5898
## 5       1069.306      19340.375      21220.290      1865.322      24056.643
## 6     17604.9840     11497.8000     15724.6510    57946.8830      2706.5703
## 7       502.2908     52938.4260     13266.9070     4012.2197    482739.4000
##   182.0458_0.803 489.0926_0.758 337.0556_0.777 389.1018_0.792 371.0976_0.801
## 2     38961.1700      1434.7361     77891.1100      2451.1028      6994.3535
## 3     51169.7730      1411.7039      2123.8315     20584.5350      3121.8787
## 4     33758.1400      1341.1239      3934.7075      2709.4160      7716.4140
## 5      25916.156       1399.844       5028.712       5237.721       5879.060
## 6     20724.7100      1986.8817      2222.3220     17286.3790      5209.3247
## 7     17853.4820      1288.3813     14473.3930     49781.4200      6424.0580
##   403.197_0.807 131.0349_0.8 372.0951_0.795 311.0753_0.804 230.0156_0.793
## 2     4133.2060   93725.9300      1870.9968      7916.0620     26786.1720
## 3    16434.2950   52997.4530      1706.7196      4291.2227     20267.7770
## 4     5214.3955   74554.6300      2679.1145      1645.0190      7272.1816
## 5     18957.777    29278.055       1695.265       4510.502       7118.002
## 6     4943.9473   62619.9600      3602.7686    101489.9840    194732.3800
## 7     3190.8542   34408.7730      2704.4630      5213.9630     13361.8400
##   181.9916_0.803 675.1192_0.802 248.0596_0.808 203.0021_0.801 230.0135_0.791
## 2      2235.6890      2395.5625      4100.9370      8536.0040     26786.1720
## 3      1330.1858       502.2117     94115.8100     13174.4260    173433.3400
## 4      1695.2194       500.2725      8698.7560      9756.9730      7272.1816
## 5       7599.906        500.000      12406.228      20716.230      20028.576
## 6    255537.9700      1356.0408      8838.0460     10468.7050    194732.3800
## 7      5933.5790      1036.9396     40463.0980     14179.2080     13361.8400
##   273.0073_0.807 313.0567_0.793 359.1353_0.806 227.06_0.796 576.1317_0.792
## 2     21640.5350      1576.8871      1199.9650    2327.6902       500.0201
## 3     55730.0160      2747.0770      2705.9120    1677.5560       502.2117
## 4     32845.9340      2117.7060      2024.0610    2125.5698      1130.5149
## 5      41429.938       1615.805       2194.423     2231.195       1044.005
## 6     56694.3000      2740.6160      5522.3070   18335.8570      2239.2495
## 7     43730.2500      8706.5710      2298.1697    1403.5505      1486.2402
##   368.0998_0.802 336.0708_0.807 224.0563_0.81 419.1134_0.748 855.1238_0.789
## 2      3468.8462      7069.7700    40847.9300      2662.7239       500.0201
## 3      2115.9365      5099.1740    11843.7440      5500.9530       502.2117
## 4      1713.5104      4117.1530    10996.3770      2803.2563       500.2725
## 5       1230.698       1282.872     11374.529       2390.166        500.000
## 6      1444.2819      4479.4530     8285.0800      4002.0244      1048.2848
## 7      1337.2166      3150.0024    16682.5500      4428.6490       502.2908
##   213.9982_0.833 188.9864_0.815 609.1423_0.802 572.1076_0.784 139.0401_0.786
## 2      2720.9587    162080.4400       500.0201      1015.9120      1527.6703
## 3      4570.8184    209628.9400      1545.8417      1006.0687      1350.2716
## 4      3981.9260    170851.8000       500.2725       500.2725       500.2725
## 5       2028.928     255497.620        500.000        500.000       1285.313
## 6      5432.6147     87560.8300      1138.2489      1088.1221      5499.4810
## 7     12856.6660    211470.3600      1402.1483      1305.2180      1352.0557
##   325.0323_0.804 181.0505_0.817 227.0559_0.8 124.01_0.775 422.1067_0.783
## 2      1310.0017     15064.9710    2327.6902    2415.2400      1149.3724
## 3      1439.7224     67733.4200    1840.9075    1614.5555      1933.4332
## 4      1111.0118     28290.8770    2125.5698    1725.7606      1274.4321
## 5       1023.366      18807.293     2467.409     1732.137       1027.562
## 6      2717.3884     16499.2660   18335.8570    2749.5370      1184.9493
## 7     28907.1250     94906.8500    1695.8068     502.2908      2038.3225
##   313.999_0.818 212.0023_0.825 448.1934_0.807 173.9923_0.799 585.0899_0.796
## 2     5934.9500     37405.9000      1357.0842      8043.6180       500.0201
## 3    14747.1230     90601.1100       502.2117     16555.2830      1217.2870
## 4     6826.1577     54552.4340       500.2725     16701.9960       500.2725
## 5     12779.035      24581.033        500.000       7784.886        500.000
## 6     5558.2880     99594.6800      2584.2312      5053.1750      1103.8805
## 7    24121.5040    173987.5600      2230.3474     17356.8090      1146.1119
##   463.107_0.79 477.1007_0.807 347.0076_0.814 167.0211_1.15 335.0494_1.152
## 2    3221.6296      1190.4961      1787.5654   403188.2500    119423.9800
## 3    2015.3980       502.2117      1232.8690   314273.6200    125768.9140
## 4    2161.7740      1062.6462       500.2725   334604.5300    134767.8800
## 5     1300.083        500.000       1404.900    373212.280     146170.770
## 6    2268.4602      1781.0600      1910.8651   600193.9400    270152.7200
## 7    2006.0029      1363.7043      1203.0910   460556.6000    205647.5000
##   381.0301_1.155 380.0301_1.155 217.0161_1.159 191.0201_1.159 405.0285_1.16
## 2     35170.8800      6337.1704     19659.6720    363765.7200    27292.4140
## 3     55100.8750     16793.7460     41126.7730   1733155.1000   150123.9700
## 4     51315.1500     10487.8180     42623.0350   1347743.6000   109597.8360
## 5      51177.840       5253.422      38632.848    1152099.200    100218.330
## 6     71307.1800     17658.1230     33021.2500    811499.5000    51973.1130
## 7     59260.8000     33215.3480     65129.5300   1213337.4000    98734.7900
##   111.0087_1.164 427.0103_1.161 310.9691_1.162 188.9863_1.166 191.0276_1.165
## 2     34893.6680     12452.2420     32047.7750     65642.7600     23857.4770
## 3    158133.1900     51556.8360     65223.3320     72952.6300     35074.5160
## 4    120755.1000     42546.7300     54402.0400     48730.1520     29036.6130
## 5     109486.630      34395.360      51852.625     109894.020      34110.137
## 6     82226.0860     23796.7990     41272.4060     31848.6350     37843.8700
## 7    121721.1200     37825.1050     51626.8600     76486.5160     34429.6250
##   173.0091_1.231 258.044_2.007 375.0931_2.077 227.0554_2.1 324.0723_2.134
## 2     30944.4840     2533.6267       500.0201     500.0201     21306.9510
## 3     44537.5080      502.2117       502.2117     502.2117      9048.3220
## 4     34525.3900     4374.3315       500.2725     500.2725      9504.1150
## 5      28947.867      4493.719        500.000      500.000       2797.101
## 6     29390.3050     1068.1229       500.0225    2764.5764     10496.8910
## 7     46178.5820     1863.5226       502.2908     502.2908     11165.8830
##   161.9866_2.133 182.0458_2.174 213.9981_2.254 326.0973_2.32 384.0537_2.335
## 2       500.0201     28041.9040      6752.2180     1109.6661      2353.7732
## 3    159573.4000     34700.8240     12230.5710     1026.8625      3245.9348
## 4       500.2725     19610.7710      5277.7593      500.2725      2293.5898
## 5       7515.866      15922.641       3254.754      1968.735       2110.682
## 6      2005.9071     18022.0020      7348.5205    41790.5160     44484.6330
## 7       502.2908     20148.4800     20126.8400     1599.8134      5405.7950
##   653.1834_2.294 675.1659_2.308 348.0769_2.315 446.0335_2.313 326.0892_2.313
## 2       500.0201       500.0201      1950.7544       500.0201      1772.1459
## 3       502.2117       502.2117      1720.4142       502.2117      1728.8490
## 4       500.2725       500.2725      1621.4033       500.2725      1122.4941
## 5        500.000        500.000       3782.358       2426.647      17648.123
## 6    156564.5200    148206.0600     98122.3400     67530.6900    843437.0600
## 7       502.2908      1043.6969      3945.9924      2553.4590      1233.1588
##   338.1178_2.307 165.0417_2.342 457.0963_2.367 227.9972_2.377 246.0109_2.385
## 2       500.0201     21899.0470       500.0201     65861.1600      1096.8365
## 3       502.2117     12035.6900       502.2117     75080.1950      2644.6387
## 4       500.2725     24832.4590       500.2725     49478.1050      1189.2017
## 5        500.000      10827.282        500.000      17093.960       2750.470
## 6       500.0225     14773.1360      2259.8994     27637.5080     66962.5860
## 7       502.2908     38866.5860       502.2908     32202.3570      2549.2446
##   206.9967_2.418 479.0459_2.443 233.0124_2.47 645.1901_2.522 309.0242_2.522
## 2     15948.3860       500.0201    33029.7300       500.0201       500.0201
## 3     34906.7540       502.2117    28601.2520       502.2117      1160.0740
## 4     16647.9120       500.2725    12021.5330       500.2725      1167.9474
## 5      29180.840        500.000     10164.411        500.000       1164.297
## 6     26154.9590       500.0225     5366.0240       500.0225      1743.6094
## 7     28900.7680       502.2908    24986.8610       502.2908      2152.3250
##   230.0129_2.513 230.0159_2.501 483.0154_2.51 232.0047_2.518 516.1022_2.528
## 2     18111.7770     16665.1700     1284.0045      1882.2661      1137.5221
## 3     18752.5780     17105.0920      502.2117      2045.0801      1284.2080
## 4      2599.2092      2599.2092      500.2725       500.2725       500.2725
## 5      31888.178      24080.053       500.000       2336.106       1134.390
## 6    791158.0000     38006.5980    47916.9340     39621.2150     12032.2110
## 7      3692.0410      2773.9204     1381.8585      1461.1941      1284.2013
##   359.0975_2.524 274.0027_2.51 565.137_2.579 218.1033_2.56 489.0936_2.593
## 2      1599.7126     5232.6070      500.0201     9406.8480       500.0201
## 3      1188.7185    47321.2970      502.2117    14377.9570      1512.1270
## 4       500.2725     4110.2764      500.2725    10466.6890       500.2725
## 5       1166.592     13986.703       500.000      8230.018        500.000
## 6      3931.9773     4022.9514      500.0225    10757.5460       500.0225
## 7      1577.5042    22292.0840      502.2908     8732.9380      1315.8228
##   422.0544_2.559 432.0832_2.56 579.0437_2.578 223.0583_2.562 611.0554_2.581
## 2      1104.2598      500.0201      1039.5365       500.0201       500.0201
## 3       502.2117      502.2117       502.2117       502.2117       502.2117
## 4       500.2725      500.2725      1002.3151       500.2725      1092.6956
## 5        500.000       500.000        500.000        500.000        500.000
## 6       500.0225      500.0225       500.0225       500.0225       500.0225
## 7       502.2908      502.2908      1737.7618       502.2908       502.2908
##   609.0591_2.577 449.0698_2.589 650.1898_2.57 364.0955_2.559 320.1087_2.579
## 2       500.0201      1219.1797      500.0201       500.0201       500.0201
## 3       502.2117      1021.5049      502.2117       502.2117       502.2117
## 4       500.2725       500.2725      500.2725       500.2725       500.2725
## 5        500.000        500.000       500.000        500.000        500.000
## 6      1051.0883      1125.1115      500.0225       500.0225       500.0225
## 7       502.2908      1406.8080      502.2908       502.2908       502.2908
##   494.0742_2.602 579.126_2.604 361.0218_2.595 295.03_2.565 293.0743_2.543
## 2       500.0201      500.0201      1896.5963     500.0201      1251.0277
## 3       502.2117     1187.2145      1686.0376    1244.3517      1513.0652
## 4       500.2725      500.2725      1616.0011     500.2725      1981.0028
## 5        500.000       500.000       1625.198     1469.206       1259.049
## 6       500.0225     1529.4370      6475.2954    4355.3706      2277.0650
## 7       502.2908     1628.0400      1148.9181    1191.4563      1544.7667
##   293.0331_2.576 484.0498_2.566 623.0319_2.6 204.9812_2.586 307.0111_2.574
## 2      1513.2408      1068.2694     500.0201     50909.4530       500.0201
## 3      2188.2178      1088.0094    1464.6678     26349.6070       502.2117
## 4      1896.8730       500.2725    1028.0994     76979.2500      1260.3247
## 5       3129.836        500.000      500.000      41582.258       1192.413
## 6     50455.0200      1007.6409    1067.2473    126316.2400      8508.9480
## 7      1738.1543      1098.5785    1018.5519    104325.9500       502.2908
##   328.9944_2.584 356.1002_2.592 168.0302_2.597 801.2049_2.656 389.1059_2.672
## 2       500.0201      1126.5315     17155.6300       500.0201       500.0201
## 3      1513.3253      1004.8297     22743.0780       502.2117      1421.5360
## 4      1029.7555      1128.5786     24585.0230       500.2725       500.2725
## 5        500.000        500.000      26314.129        500.000        500.000
## 6      2172.9480     38366.8950     19339.6860       500.0225     10951.8910
## 7      1161.0303      2596.6245     20257.0860      1234.3824      1916.8765
##   487.0759_2.632 675.1222_2.643 457.097_2.652 675.2009_2.65 509.0519_2.681
## 2       500.0201       500.0201      500.0201      500.0201      2563.2800
## 3       502.2117      1012.2609      502.2117      502.2117      3832.6733
## 4       500.2725       500.2725      500.2725      500.2725      2756.9650
## 5        500.000        500.000       500.000       500.000       5336.205
## 6      1562.7051       500.0225     2590.1562     1027.5782      1662.3877
## 7       502.2908      1045.9308     1177.7500      502.2908      2306.1938
##   590.1471_2.657 178.0524_2.721 216.9812_2.65 829.2715_2.727 323.0414_2.68
## 2       500.0201    430067.5000    29082.2290      3268.4067     1270.5984
## 3       502.2117    558012.4400    43089.9450      5805.1704      502.2117
## 4       500.2725    302084.4000    20813.8540      1082.7236      500.2725
## 5        500.000     445030.120     24046.232        500.000       500.000
## 6       500.0225    171995.9700    48939.3700       500.0225     5156.4673
## 7      1154.0962    386786.4700    50271.4700     12940.9280     1222.4187
##   835.2888_2.725 303.072_2.684 260.0239_2.686 659.1667_2.763 669.1448_2.74
## 2      4796.1810    12730.7710      1589.9888      5241.6860     8758.1660
## 3      7558.7420    17661.3380      1312.1364      7732.2590    16029.6280
## 4      1253.8003    12083.9960      1296.7530      1978.4995     4091.1430
## 5        500.000     21257.040       3538.354       3215.178      2959.554
## 6      1105.3215    25477.3500     54481.5200       500.0225     3764.2087
## 7     15031.0910    29635.9880      1088.1534      5833.2200    22590.6210
##   313.9951_2.734 596.1248_2.733 480.1382_2.735 194.0459_2.735 194.0495_2.735
## 2      5580.3890      1975.0679      8888.5960     47558.7270     47558.7270
## 3     10188.7040      2632.9190     19508.8670    119709.3600    119709.3600
## 4      9679.0870      1078.3878      8442.5200     90103.2500      7482.2227
## 5      11386.321       2541.959       7655.292     108583.836       9327.712
## 6      6570.5880       500.0225      7068.9760     63520.3870     63520.3870
## 7     21870.3790      2943.0490     97898.5100    392848.9400     27427.8930
##   411.0814_2.735 395.0857_2.735 379.0909_2.789 549.1963_2.753 744.2193_2.763
## 2      1161.5116      7264.7417     39631.1700     39381.4140      4912.6953
## 3      4568.2075     16883.5160     44951.2660     61347.6800      7099.3203
## 4      2500.2192     11030.8450     22708.0180     13445.1730      1960.9044
## 5       3053.327      18969.777      44086.992      10282.172       1940.490
## 6      2178.0005      4956.7812      9066.3300     12858.3090      1098.7122
## 7     25949.7870     32805.0080     26848.9550    124875.2660     11788.7470
##   263.1041_2.759 464.1437_2.772 264.1071_2.755 665.1832_2.777 178.0515_2.811
## 2    569173.9000     53509.5270     97138.4100      7740.3335    582890.0600
## 3    825874.3000     77648.0160    138249.4200      8456.4920    629197.4000
## 4    291803.0000     22589.6680     48649.5980      2622.5708    330607.7800
## 5     256603.900      29994.000      45349.050       4272.781     543115.250
## 6    292615.9400     16214.3530     50580.3670      1148.2830    216390.9500
## 7   1521374.0000     77026.5300    218575.6000      6747.9180    548982.2000
##   188.9864_2.765 829.2715_2.758 835.2887_2.754 195.0514_2.765 396.0904_2.751
## 2    125332.4600      3268.4067      4796.1810      9668.1520      2773.4705
## 3    171900.1900      5805.1704      7558.7420     16462.2850      4553.3335
## 4    126318.1640      1082.7236      1253.8003     44346.1640      3827.3340
## 5     221183.200        500.000        500.000      12144.354       4661.544
## 6     75570.3700      1149.6036      1260.7935     42334.4060      2355.9920
## 7    182080.3100     12940.9280     15966.0510    129361.8400      9247.4820
##   459.1629_2.778 391.1122_2.774 263.1397_2.777 383.0644_2.771 242.0128_2.785
## 2      1440.4685       500.0201     24785.2480     10508.1360     87696.1500
## 3      2860.3567       502.2117     36097.6100     10048.5370     39388.5860
## 4      3474.9812      3514.7710     11254.7500      6677.0615      4049.3271
## 5        500.000        500.000       9767.227       6365.724       3620.569
## 6      3436.1748      2802.4949     11711.8180      9871.0160      4309.5260
## 7     28042.4790     10796.5210     64490.0800     24387.0410      5961.0737
##   263.0272_2.81 931.1224_2.809 669.1447_2.763 551.0331_2.81 835.0489_2.8
## 2    18140.5400      1254.2596      8758.1660     1184.8718     500.0201
## 3    15501.4590      1108.3787     15741.4490     1241.0110    1436.2246
## 4    12893.2110       500.2725      4091.1430     1162.4291     500.2725
## 5     17381.934       1192.154       2959.554      1748.406      500.000
## 6   108861.8100       500.0225      3764.2087     1210.9774    1288.9585
## 7    12464.6220      1427.3160     22590.6210     1598.5969    1269.8384
##   246.9917_2.802 565.0065_2.811 263.0591_2.805 331.091_2.747 549.1196_2.793
## 2     27239.2660      1493.6395      1163.3062    56195.7400      1929.5126
## 3     98978.9000       502.2117      1078.2225    57986.1640      1893.3818
## 4     19829.8440      1257.8796       500.2725    38724.4730      1031.8339
## 5      33894.020       1155.785       1244.970     32944.367       1270.531
## 6      7881.4440      1449.9929      3014.2866    44828.7030      3602.1836
## 7     20859.1580      1317.6528      1540.5650    73977.1900      2059.1460
##   265.0184_2.828 468.0834_2.815 464.0663_2.822 659.1239_2.825 549.035_2.814
## 2      1264.2222      1004.6373      1094.8403       500.0201     1317.6860
## 3      1211.6644       502.2117      1611.5156       502.2117     1155.6483
## 4      1023.2070       500.2725      1514.5114       500.2725      500.2725
## 5       1147.350       1006.675       1764.189        500.000       500.000
## 6      6242.4033      7345.4976      3142.1477       500.0225     1219.5210
## 7      1282.2894      1068.5092      1294.5444       502.2908     1213.9509
##   645.1099_2.832 383.0324_2.787 473.0218_2.809 181.9917_2.823 549.1963_2.777
## 2      1395.7289      5912.8260      3270.0110      1184.9646     39381.4140
## 3      1463.8264      4728.0770      3020.3740      1102.5000     61347.6800
## 4       500.2725      4706.5728      2659.0908      1683.8644     13445.1730
## 5       1050.546       3316.681       2979.912       4367.650      10282.172
## 6       500.0225      8058.6973      4164.3700    137960.9500     13319.2690
## 7      1493.8925      5256.6304      2292.6611      3359.2764    124875.2660
##   464.1437_2.808 419.1155_2.861 610.164_2.859 896.2543_2.86 219.0524_2.85
## 2     60517.5800       500.0201     5761.9770     1530.5090      500.0201
## 3     77648.0160       502.2117     6249.2960     1049.4247      502.2117
## 4     22589.6680       500.2725     2146.5510      500.2725      500.2725
## 5      29994.000        500.000       500.000       500.000     13221.704
## 6     18029.0120      5512.6924     2944.6382      500.0225      500.0225
## 7     80643.5700       502.2908    21186.6350     4827.6700    16056.6080
##   505.1427_2.841 580.1297_2.848 324.0723_2.857 665.1833_2.829 219.0509_2.854
## 2      1196.0145      5893.4844     30983.6210      8325.7640       500.0201
## 3      1200.0968      4994.8843     27085.7910      8456.4920       502.2117
## 4       500.2725      2140.1482     25058.8050      2833.0500      1030.7941
## 5       2385.180       4268.077      11818.713       4272.781      15151.294
## 6      1112.1592      1546.4408     31264.0410      1989.6998      1124.0906
## 7     38062.6170      2892.5364     98016.6950      6747.9180    232285.7000
##   659.1666_2.837 263.1041_2.796 645.1893_2.881 560.1364_2.889 441.0612_2.876
## 2      6892.9250    552014.1000      1417.7347       500.0201     11581.2680
## 3      7546.5280    790106.5000      1507.5568      1010.2306      9240.3890
## 4      1986.5365    291803.0000       500.2725       500.2725      5040.6350
## 5       3215.178     256603.900        500.000        500.000       9564.785
## 6      1191.7554    295047.2800      1813.0662      1330.9205      4080.5857
## 7      6881.4030   1381773.8000      1361.5044      1112.5435      5153.3027
##   574.1142_2.883 343.0669_2.881 178.0513_2.879 379.0909_2.88 241.1193_2.896
## 2      3906.2615     25783.2930    712494.5600    56203.8750     19704.2290
## 3      4457.3070     11092.4710    623981.8000    42185.8700     43030.2930
## 4      1635.8798     12100.0500    352942.8800    21750.9430     36307.1100
## 5       3542.160       3660.505     543115.250     44153.900       9643.351
## 6      1020.1672      2780.4540    253609.4000    12113.6640     17985.6040
## 7      2298.9038     18084.5720    580858.1000    32058.9700     23183.8320
##   203.0021_2.888 246.0383_2.873 574.1523_2.913 134.0611_2.89 370.0781_2.895
## 2     16123.0040     72523.9400       500.0201    27422.1660      1753.0948
## 3     48660.6400     60718.7230       502.2117    23332.5820      1532.4760
## 4     18991.7100     55614.6000       500.2725    12033.9730      2974.4856
## 5      28931.715      83623.164        500.000     20631.459       1742.336
## 6     16632.7000     42570.6330      1073.2687     8854.5240      2740.1174
## 7     19111.6110     41042.7340      1010.2699    20185.7710     15739.5600
##   468.0438_2.896 277.0007_2.942 464.1436_2.856 432.1639_2.932 395.0857_2.92
## 2      1630.9438      2764.4556     60517.5800       500.0201     4678.2500
## 3      1174.2214      1816.1577     62852.1900       502.2117    19229.0000
## 4      1794.5576      3747.0417     17987.0980       500.2725     4045.2932
## 5       1024.719       2219.419      29994.000        500.000      8879.860
## 6      1138.2505      5460.6675     18029.0120      2839.2302     2433.5217
## 7      2265.8425      4001.6720     80643.5700       502.2908    13934.5650
##   194.0459_2.921 373.1067_2.937 659.2045_2.918 389.1005_2.94 388.047_2.937
## 2     24421.2300      5205.5020       500.0201      500.0201    21387.0370
## 3    135220.5300     28267.5980      1275.6581     7641.4185    36570.9600
## 4     28190.6820      3377.2227       500.2725     1311.1658    11045.6390
## 5      42752.773       9139.062        500.000      1345.664     11872.902
## 6     39412.0660     11700.8460      1064.9032     9700.9730    11901.3420
## 7    146909.3900     29116.9380      1136.2034    11689.8130    25565.7270
##   422.1084_2.915 473.0996_2.932 428.0941_2.98 157.0506_2.959 357.0826_2.931
## 2       500.0201     15568.2010      500.0201     23276.5700      4140.4717
## 3       502.2117     38337.5000     1212.6360     23729.4410      1923.6031
## 4       500.2725      6745.8630      500.2725     40769.4960      3403.0366
## 5        500.000       4761.560       500.000      14662.697       2746.002
## 6      1230.8770      9643.7780     3624.5490     38093.6640      3540.5752
## 7      1393.5662     37457.2800     1315.9333     26698.3830     20611.3070
##   459.0843_2.964 263.1054_2.91 623.1618_2.946 374.0316_2.965 227.0628_2.987
## 2      7907.9385   522071.9700      1284.4814     11341.1540      1012.7760
## 3     16352.2910   583875.5600      1028.4437     18363.0530       502.2117
## 4      6574.0000   226123.2300       500.2725     12535.9100       500.2725
## 5       3871.335    204995.860        500.000      11371.824        500.000
## 6      2946.0488   295047.2800      1066.5320      3823.3472     10034.8740
## 7     16488.6600  1323426.1000      1008.9670     16596.3320       502.2908
##   477.1039_2.949 139.0401_3.003 227.0551_2.986 609.1484_2.937 322.1104_2.943
## 2       500.0201      1051.8927      1485.8943      2539.2603       500.0201
## 3      1285.8231      1024.3806      1217.1273      1957.0605       502.2117
## 4       500.2725       500.2725      1569.8837       500.2725      1002.4456
## 5        500.000        500.000       1152.879       1008.658        500.000
## 6      1268.8782      4151.3193     14865.2890       500.0225       500.0225
## 7      1123.1480      1233.3864       502.2908      3621.3490       502.2908
##   1093.9937_2.988 785.2097_2.974 336.1218_3.046 563.1044_2.949 487.0726_2.982
## 2      14059.8980       500.0201      1228.1272      1366.6039      1291.2161
## 3      19792.4380       502.2117      1322.5994      1505.8705       502.2117
## 4      24328.4380       500.2725      1852.0878      1219.2864      1037.9515
## 5       21201.113        500.000       1044.224       1060.485       1200.075
## 6      10119.5340       500.0225      1324.4464      1141.1499      1299.7789
## 7      19701.6900      1508.3335      1304.3164      2479.1418      1657.1627
##   389.1043_2.952 173.0001_2.997 577.1184_2.969 771.1944_2.999 368.9723_3.004
## 2       500.0201     15839.0090       500.0201       500.0201      5975.8730
## 3      3734.0420     27973.3320      1818.1772       502.2117     26272.9840
## 4      1241.3461     27233.0210       500.2725       500.2725     23327.0820
## 5        500.000      18762.623        500.000        500.000      12524.897
## 6      9700.9730     10526.3880       500.0225       500.0225      4273.0464
## 7      6027.4710     27079.7730      1620.6034       502.2908     18753.4000
##   172.9915_3.001 359.1353_3.002 382.9875_3.002 875.1494_2.993 555.0787_2.996
## 2    228495.1700      2235.3823     12367.2190       500.0201       500.0201
## 3    543342.4400      2762.0930     58994.6600       502.2117       502.2117
## 4    461902.0300      3007.4146     22580.5140       500.2725       500.2725
## 5     275754.160       2034.514      12267.216        500.000       1000.227
## 6    149352.1000      4497.6455     11250.2930       500.0225      1806.5128
## 7    432861.4400     15491.3340     37467.4920      1036.0077      1070.4640
##   277.0329_2.993 855.1197_2.99 645.1887_2.968 360.1388_3.006 224.0561_3.018
## 2      1357.0261      500.0201       500.0201      1218.9586     30314.6930
## 3      1085.4979      502.2117       502.2117      1373.2695      7335.3496
## 4      2463.6060      500.2725       500.2725       500.2725      8555.2150
## 5       1895.586       500.000        500.000        500.000       8715.640
## 6      6097.4030      500.0225      2040.2936      1191.8896      8576.3620
## 7      3241.9102      502.2908       502.2908      2906.1467     16478.8400
##   1117.2561_3.018 861.1356_3.001 560.1365_2.971 800.2743_3.027 181.0504_3.017
## 2        500.0201       500.0201       500.0201       500.0201     24167.7680
## 3        502.2117       502.2117       502.2117       502.2117    123787.5900
## 4        500.2725       500.2725       500.2725      1187.7285     38108.6520
## 5         500.000        500.000        500.000        500.000      29161.830
## 6        500.0225       500.0225      2716.6870       500.0225     27173.9920
## 7        502.2908       502.2908       502.2908       502.2908    176814.8800
##   741.1857_3.018 359.0958_2.977 1123.2728_3.021 457.0623_2.989 741.1856_3.019
## 2       500.0201      1950.8844        500.0201      1511.4958       500.0201
## 3       502.2117       502.2117        502.2117      2918.6355       502.2117
## 4       500.2725      1433.5070        500.2725       500.2725       500.2725
## 5        500.000       1120.713         500.000       1434.815        500.000
## 6      1464.4463     99050.0550        500.0225      8062.7080      1464.4463
## 7       502.2908      2729.3610        502.2908      2425.1157       502.2908
##   479.0465_3.005 547.1102_3.005 418.1842_3.015 569.0928_2.988 427.0844_2.991
## 2      1015.8890      1115.2130       500.0201       500.0201       500.0201
## 3      1293.2338      1254.8406      1044.8848      1342.1074      1358.4607
## 4       500.2725       500.2725       500.2725       500.2725       500.2725
## 5        500.000       1132.767       1129.500       1024.919       1216.882
## 6      9337.2300      1172.8724     18896.3100      4701.3647     15889.6640
## 7      1005.1578       502.2908       502.2908      1022.4750      1556.0026
##   951.181_3.008 364.0972_3.027 755.2012_3.03 189.0027_3.097 1131.2716_3.026
## 2      500.0201       500.0201      500.0201     34493.9020        500.0201
## 3      502.2117       502.2117      502.2117     77083.4900        502.2117
## 4      500.2725       500.2725      500.2725     26709.7700        500.2725
## 5       500.000        500.000       500.000      19874.867         500.000
## 6      500.0225       500.0225      500.0225     33752.4960        500.0225
## 7      502.2908       502.2908      502.2908     58609.1200        502.2908
##   945.1645_3.008 605.1126_3.023 379.0338_3.038 1137.288_3.026 230.0128_3.042
## 2       500.0201      3806.9210      5589.8840       500.0201     42695.7200
## 3       502.2117      2101.3250     12932.4030       502.2117    164720.3000
## 4       500.2725       500.2725      5847.4830       500.2725      9055.0930
## 5        500.000        500.000       5296.986        500.000      25247.043
## 6       500.0225       500.0225      3140.2322       500.0225      6230.3080
## 7       502.2908      1248.9188      7005.9346       502.2908      9821.0150
##   814.2904_3.028 336.1214_3.081 432.2027_3.06 828.3048_3.061 500.1902_3.066
## 2       500.0201      1702.6837     1075.9193       500.0201       500.0201
## 3       502.2117      1711.1191      502.2117       502.2117       502.2117
## 4       500.2725      1852.0878      500.2725       500.2725       500.2725
## 5        500.000       1044.224       500.000        500.000        500.000
## 6       500.0225      1362.4879    21346.4320       500.0225      6366.7334
## 7       502.2908      1304.3164      502.2908       502.2908       502.2908
##   361.1499_3.066 109.0294_3.11 188.0103_3.118 330.0287_3.095 337.056_3.104
## 2      1650.4202      500.0201     64036.3600     12306.4730    43507.0940
## 3      7590.4560     1165.1726    144177.0800      5873.3220     1467.1447
## 4      3670.9233     1267.8936     44057.8200      4786.0493     1786.5221
## 5       2687.157       500.000      29924.877      18903.006      3224.266
## 6      8064.4507     1546.4446     62198.7580     13038.8310     1684.1503
## 7     12763.8090      502.2908    104678.0600      5482.9460     9325.2530
##   197.0442_3.134 375.1278_3.109 979.2124_3.136 1108.0095_3.117 397.0032_3.133
## 2      1582.0250      2554.6326       500.0201      39322.9700     39249.4600
## 3      1201.0673      9047.2280       502.2117      46984.0350    135508.2800
## 4      2969.0798      5938.3530       500.2725      33850.3120     21442.4120
## 5       1757.130       1790.583        500.000       35272.830      13288.415
## 6      2792.0032      6773.0890       500.0225      37220.9200     38784.6100
## 7      1808.8665     21871.0620       502.2908      49979.1130     84667.9800
##   583.1092_3.147 889.1651_3.147 187.0383_3.122 187.0075_3.121 973.198_3.133
## 2      1121.1277       500.0201     28279.0040    725395.7000      500.0201
## 3      1553.4073       502.2117     68913.6400   1835242.2000      502.2117
## 4       500.2725       500.2725     16783.2970    453787.2000      500.2725
## 5        500.000        500.000      11901.387     327898.030       500.000
## 6      3172.1243       500.0225     25334.3160    657575.0000      500.0225
## 7      1627.6866       502.2908     49611.6800   1310167.2000      502.2908
##   313.0569_3.13 189.0026_3.12 373.0764_3.153 883.1498_3.145 209.0452_3.159
## 2      500.0201    40609.0900      1451.3241       500.0201       500.0201
## 3      502.2117    77083.4900       502.2117       502.2117       502.2117
## 4     1100.7655    26800.7100       500.2725       500.2725       500.2725
## 5       500.000     19874.867        500.000        500.000        500.000
## 6     3479.0872    36243.5400      1334.4143       500.0225      1454.0785
## 7     3640.0960    58609.1200      1544.6494       502.2908      1420.8890
##   254.9941_3.14 211.0611_3.158 747.2342_3.15 413.1436_3.2 493.0653_3.147
## 2    30327.8930      3144.8100      500.0201    1291.3829      1505.3153
## 3    49599.2850      8091.9644      502.2117    1676.5596      1463.2155
## 4    22590.5270      3917.6372      500.2725    1659.1958      1354.6180
## 5     17440.748       4739.452       500.000     1180.482       1028.109
## 6    29116.4120      5361.1714      500.0225    1563.1838      3342.8160
## 7    38267.1200      3043.8208      502.2908    1831.2222      1593.8037
##   276.0009_3.151 769.2171_3.155 373.1513_3.174 471.0817_3.145 397.0032_3.134
## 2       500.0201       500.0201      1431.4451      1211.0331     39249.4600
## 3       502.2117       502.2117       502.2117      1474.2480    135508.2800
## 4       500.2725       500.2725      1178.6276      1141.4017     21442.4120
## 5      11798.137        500.000       1601.252       1174.738      13288.415
## 6     45853.5740       500.0225      1393.0183      1658.3204     38784.6100
## 7       502.2908       502.2908      1581.8109      1496.6775     84667.9800
##   218.9964_3.175  373.114_3.2 175.0611_3.177 230.9968_3.178 429.0831_3.189
## 2      6321.5107    2925.5212     10914.0240     13176.9260     28858.9450
## 3     24121.7070    5051.8594      9954.0970     25346.6900     18626.2900
## 4     27496.1520    4485.0410     18593.0740     13596.5730      1156.7950
## 5      25566.215     2577.343      26890.793      61188.600        500.000
## 6      5877.7227   27763.6860      5454.3076     23754.1460       500.0225
## 7     17027.7710   10832.5160      7648.3100     38262.9450       502.2908
##   311.0752_3.182 785.1841_3.18 441.1026_3.212 1124.0041_3.197 599.1056_3.199
## 2      1799.5591      500.0201      1254.1736       1171.2819       500.0201
## 3      2623.8342      502.2117       502.2117       1529.9209       502.2117
## 4      1156.8150      500.2725       500.2725       2603.4631       500.2725
## 5       2230.256       500.000        500.000        3558.246        500.000
## 6     59223.1900      500.0225      5217.1530       1624.3170      1091.4772
## 7      5574.2534      502.2908       502.2908       1314.7184       502.2908
##   493.0642_3.179 428.9933_3.184 203.0048_3.202 412.9977_3.204 204.9979_3.197
## 2      1495.0741      1401.9183     27376.5040      4577.0903      1948.8909
## 3      1393.2332      4389.1313     43821.9450     11395.8790      3473.2046
## 4      1296.8182      2192.7295     44778.0740      4682.3500      3641.9128
## 5       1029.883       1831.237      70541.990       6593.104       5097.104
## 6      3342.8160      1069.1965     41308.2580      8312.1045      3152.6338
## 7      1086.0625      2056.2864     34643.6950      8231.4250      3754.8735
##   203.002_3.205 303.0178_3.212 370.097_3.208 448.1959_3.232 1108.0095_3.194
## 2    27376.5040      4841.2476     7298.0474       500.0201      39322.9700
## 3    43821.9450      8432.9010    11697.9730       502.2117      40273.1680
## 4    44778.0740      5308.7080     4489.0293       500.2725      30145.4530
## 5     70541.990       6000.432      3371.135        500.000       32093.627
## 6    41308.2580     29464.3950     5011.5527      4333.9290      34589.2800
## 7    34643.6950     16405.0490    15327.7480       502.2908      42463.1400
##   429.083_3.201 593.1477_3.228 403.1971_3.26 605.1462_3.238 261.0071_3.241
## 2    28858.9450       500.0201     4809.0405       500.0201      1312.1093
## 3    18626.2900       502.2117     5487.4530       502.2117      6019.4976
## 4     1156.7950       500.2725     1935.7369       500.2725      2738.3020
## 5       500.000        500.000     13184.255        500.000       9583.148
## 6      500.0225      1024.6782     3571.7175       500.0225      2233.9287
## 7      502.2908       502.2908     2509.0200      1458.7856     28961.7990
##   209.0452_3.24 368.0971_3.297 509.0409_3.291 1004.2068_3.286 675.9686_3.302
## 2      500.0201      1528.0566     16441.8030        500.0201      1067.3505
## 3      502.2117      1605.1406     23053.1660        502.2117      6176.8887
## 4      500.2725      1167.4445      1587.6748        500.2725      1225.1904
## 5       500.000        500.000        500.000         500.000       1599.655
## 6     1335.0479      1091.7689      1391.2784        500.0225      1230.1396
## 7     1420.8890      1252.5865      1236.9949        502.2908     10873.5610
##   608.1059_3.3 423.9954_3.299 681.985_3.302 212.0348_3.301 212.0109_3.298
## 2     500.0201      4184.5684     1686.9532     19439.3950     29946.0740
## 3    1257.9000     14292.3800    10467.9300     53517.1100     35281.3870
## 4     500.2725      3379.8555     2960.2507     25333.8930     35919.4400
## 5      500.000       1659.044       500.000       9232.063      21052.742
## 6    2132.1924      5947.7715     2097.8850     20752.4880     35933.5350
## 7    1638.5148     12934.1770    26128.1840     84059.9140   2170537.0000
##   1133.0047_3.302 258.9926_3.301 421.9984_3.301 448.9914_3.302 279.9896_3.301
## 2      12797.5350      4464.9920     35450.4900      4404.7970     35932.0400
## 3      14018.1910     20303.9380    123168.1250     12268.9200     51047.7100
## 4      23355.4160      2779.1426     27037.9730      4722.0674     43687.1130
## 5       13411.941      16626.994      10325.753       1671.214      27310.984
## 6      14721.5450     10513.3630     45261.7340      4655.2334     44516.5080
## 7      25735.3750     11031.1250    118986.4400     21651.2170     68140.0200
##   459.0926_3.306 336.0718_3.292 213.9981_3.303 212.0027_3.304 446.9937_3.304
## 2     17902.4410     16148.0720     27911.1900    515011.8000     28600.3030
## 3     14738.7490      9804.8060     63811.2150   1357483.8000    113461.4400
## 4      1076.4628      7657.4443     30817.9260    618903.8000     42696.1520
## 5        500.000       2649.646      16270.612     271142.440      10988.386
## 6       500.0225     11947.9290     37721.7340    624528.3000     39930.9500
## 7      1484.4175      4903.3760     90533.0000   2170537.0000    204963.8300
##   572.1094_3.326 429.0423_3.352 215.0021_3.307 594.0962_3.363 283.0822_3.328
## 2       500.0201      2229.6282     30515.8340      4259.0854     40946.7150
## 3       502.2117      1990.6552     44670.7000      2377.0000     59168.2000
## 4      1203.5193      1930.7524      8639.1710      1370.1451     34351.0040
## 5        500.000       1217.086      92194.445       1024.509      14026.344
## 6       500.0225      2240.3625     31006.0040      1611.0526     47110.3630
## 7       502.2908      3608.4700     17411.1020      4252.1885     85490.8050
##   569.0956_3.38 245.0124_3.342 755.1981_3.389 273.0074_3.349 347.0881_3.328
## 2     1287.2800      8036.6990       500.0201     21716.8000       500.0201
## 3     1274.6588     56800.0400       502.2117     58623.1330       502.2117
## 4      500.2725     15923.6050       500.2725     32809.4300      1064.0841
## 5      1122.002      15662.349        500.000      43919.934        500.000
## 6     1236.8182      9428.4320       500.0225     47351.6560      1424.5940
## 7     1189.5416     65532.4920      1470.4814     44389.1700      2911.9338
##   243.1349_3.353 237.0356_3.369 574.1534_3.396 457.0651_3.354 404.0395_3.379
## 2     37066.1950       500.0201       500.0201       500.0201      1617.2145
## 3     15518.8300       502.2117       502.2117       502.2117      1894.1229
## 4     28669.3710       500.2725      1050.2803      1061.5360      1597.4543
## 5       5885.612       1284.558        500.000        500.000       1430.279
## 6     21825.2830      1065.7505      1038.6943      1686.2825      1847.7064
## 7      9667.5625      1024.9375      1054.7756      1319.7858      2474.0007
##   350.088_3.366 388.047_3.398 308.0774_3.378 345.1554_3.382 357.0825_3.399
## 2    28473.0350    23033.5040      8928.0330      3215.5464      1369.4939
## 3    34917.1640    37494.9700      2757.6985     14827.9990      1168.5048
## 4    33827.9920    13517.0660      3893.1592      7265.2607      1548.8846
## 5      7937.236     13641.189       1195.560       3706.526       2546.284
## 6    19562.9570    11891.3150      4109.6245     12293.0205       500.0225
## 7    16392.7440    23257.7250     22572.1780     20402.7400     22256.2710
##   283.0822_3.343 381.0802_3.385 347.17_3.394 645.1896_3.451 372.1099_3.404
## 2     40946.7150      1248.5895    1777.5074      2839.9000      4393.8200
## 3     59168.2000      1297.4020    1619.6880      3352.0417      2316.0000
## 4     34351.0040      1594.8368    8759.6330      1625.7839     22392.5060
## 5      14026.344       1237.889     1235.619       1933.333       9403.422
## 6     47110.3630      2476.5938   16943.1210      1261.0593      1336.3472
## 7     85490.8050      1424.4496    7108.1370      2030.4913      1796.5156
##   380.0942_3.483 359.1347_3.481 178.0557_3.444 240.9816_3.419 393.0614_3.427
## 2     32171.9690      6637.6074     33387.3160     76310.1640     18147.8160
## 3     23183.5880     10761.7310     35296.3200      2467.5962     18278.2870
## 4     22360.6150      9616.3010     42495.6370      6403.5713     20145.7000
## 5      32012.945       7535.427    1492137.800      27549.479      17839.291
## 6      8855.1160     10072.2500     30864.3000      4978.0310     27679.4730
## 7     16139.8270     31457.8980     37236.3700     13784.1790     23142.6820
##   659.2057_3.452 275.0224_3.427 331.091_3.433 297.0036_3.423 336.0706_3.376
## 2      1011.9239      1420.3838    60085.2200      1354.6753      2559.7950
## 3      1295.6661      7311.3340    59490.2200      1590.6173      1734.8120
## 4      1025.2408      1792.4160    64656.6560      1537.6403      1323.7981
## 5        500.000       2959.763     46114.137       1095.457        500.000
## 6      1459.6862      2168.9020    90255.9840      1227.8118       500.0225
## 7      1565.1840      1959.2510    85001.9500      1731.3763      1036.4287
##   361.1502_3.49 569.1751_3.441 338.0632_3.433 246.0383_3.487 321.0622_3.448
## 2     2958.1145      6952.4550      1654.4623     92775.0700     29864.2000
## 3    11504.6930     11497.2870       502.2117     75916.8300     30422.8440
## 4     5831.1460      3894.2944       500.2725     97662.7300     31541.7030
## 5      3116.306       1575.881        500.000     113493.880      25448.340
## 6     5918.6294      6497.2915       500.0225     72250.6800     30603.7870
## 7     8466.9720     18514.0700       502.2908     59849.7340     31963.0300
##   636.1806_3.455 264.1168_3.46 611.1667_3.462 526.114_3.463 675.1598_3.47
## 2      6597.0000    18984.1230     11994.7705    25346.2580     1367.0046
## 3      6171.3887   209550.1400     13618.3140    22599.6450     1885.2966
## 4      3551.7068    12719.3780      8018.0566    18018.1400     1052.2578
## 5       1692.240     11339.950       5001.151     17458.889      2040.139
## 6      3185.5290    15336.2070     11976.2890    13655.1570     1696.0833
## 7      5005.0073    34772.8550     18729.1880    18866.6130     1665.9763
##   759.1899_3.464 663.1291_3.465 473.0995_3.464 1115.3646_3.466 835.2891_3.466
## 2      6770.3710     17872.6270     26638.6520       9007.8600     30294.4280
## 3     17925.9960     25745.9630     71092.4900      14915.7900     54536.9500
## 4      3023.3018      8960.3900     11244.1830       1858.0869      9193.0830
## 5       2437.424       5286.119       9080.140         500.000       3969.529
## 6      3502.1830     10144.6280     23421.8380       2555.3733     12742.8410
## 7     17017.3070     31538.5230     57073.7500      40242.0940     93430.3700
##   263.141_3.465 669.1453_3.465 565.1701_3.465 1121.3811_3.466 813.2953_3.466
## 2    91165.7200     31356.9940      8595.8220       6712.3003      6448.3354
## 3   104570.1300     34249.3120     12769.9330       9404.1880     11707.7450
## 4    26066.0000     13491.6980      3599.4756       1444.8982      2950.2415
## 5     32622.402      10226.504       2471.274         500.000       1094.941
## 6    47276.6200     18428.2910      5163.5684       1624.0774      2361.4160
## 7   129550.0900     51002.4920     19104.1900      21716.1460     24760.5920
##   361.0713_3.465 829.2722_3.466 549.1965_3.467 971.2036_3.465 263.1046_3.466
## 2     27392.8800     24744.9510    202512.7200      9367.9380   2398278.2000
## 3     32319.6050     38729.4020    262769.6600     12603.4460   3079720.0000
## 4     14878.2650      5787.4517     80314.7700      4049.7893    984361.2000
## 5      11316.180       5231.621      48212.836       2011.288     766227.750
## 6     15289.3930      7975.6540     92371.7200      4322.8286   1079254.1000
## 7     38964.1800     74986.2200    437470.5000     16567.9670   4669233.0000
##   383.053_3.466 527.2139_3.467 728.2422_3.466 949.2215_3.466 145.0619_3.467
## 2    86987.2100     20327.6540      8234.7130      7274.3540     64166.7400
## 3   101857.5300     35878.9770     11448.2260     12761.2180     78737.6800
## 4    64309.7150      6010.0723      4072.0950      3739.2588     33152.9840
## 5     55675.140       4094.643       3181.435       1704.055      25409.906
## 6    69386.6250      8192.3100      2556.0989      2641.2551     33648.3750
## 7   119541.6300     57606.1300     11523.1130     22226.4340    127784.8800
##   744.2195_3.468 1030.3123_3.466 750.2363_3.468 480.1372_3.468 1257.2949_3.465
## 2     27855.5530      12820.2660     29474.2300      1708.6261       4634.3050
## 3     34246.8750      14998.2000     30712.8360      2180.9597       4342.8440
## 4     12259.0150       3155.5745     12023.7970      2122.2717       1329.2925
## 5      10039.240        1941.837      10111.634       1813.109         500.000
## 6      7884.7427       2729.7888      9491.5340      2119.3398       1443.2474
## 7     34506.3670      16687.0300     26660.2230      3721.5520       9309.0120
##   674.1395_3.477 643.1894_3.473 230.9969_3.457 945.2595_3.469 464.1438_3.474
## 2      4456.7144      8002.7534      2387.2107     14134.8770    191703.7300
## 3      7142.2456      8498.5340      5497.5380     14474.3740    181057.9700
## 4      3665.4540      4157.4053      7491.0020      5632.1123    116001.0860
## 5       2976.649       4629.730      37576.363       5843.373     117608.930
## 6      3044.6480      2571.2979      5612.9424      2455.5017     77506.0100
## 7      5177.9090      6552.0117     16211.3970     12756.3920    162613.1200
##   659.1667_3.474 665.1835_3.474 369.0829_3.476 388.047_3.472 178.0818_3.476
## 2     26325.2500     28839.4410      3680.2852    23033.5040     71185.5550
## 3     26661.6880     22829.7620      5441.3280    45957.4060     67737.3300
## 4     11779.7680     16705.2100      3148.8413    16806.2660     42114.6880
## 5      16950.727      19587.285       5100.924     14923.624      58070.164
## 6      5978.7695      6944.2935      6644.0894    15894.6090     21287.2090
## 7     19562.0410     19230.8380      7792.7715    28514.1520     48103.1560
##   357.1107_3.472 692.1776_3.461 860.2066_3.476 134.0612_3.478 178.0515_3.479
## 2     14011.9250       500.0201     10398.2710     48428.3750   1932230.2000
## 3     13775.3510       502.2117      8563.5970     43549.1800   1811344.0000
## 4      6658.9956      1036.9456      4538.2030     32288.1200   1065876.6000
## 5      12946.002        500.000       7695.449      44112.535    1492137.800
## 6      5244.0557       500.0225      1632.3392     19090.2420    576666.1000
## 7     10987.5810       502.2908      4974.2500     37712.8950   1247351.6000
##   558.136_3.478 441.0613_3.482 574.1139_3.482 236.0095_3.482 775.1556_3.475
## 2     5825.8260     21828.8650     18109.1230     39066.0080      5742.7217
## 3     3876.0693     15824.3530     13169.5880     37001.3000      4708.5713
## 4     2554.7070     16511.3700      8449.4000     42179.5900      2568.1091
## 5      4499.181      23779.107      13967.390      49828.348       4879.240
## 6     1612.5391      7390.1455      2859.6802     27509.8900      1227.6125
## 7     2306.6038     10609.4880      5463.6865     25460.7930      2693.2432
##   580.1303_3.48 379.091_3.484 590.1068_3.469 607.1267_3.483 371.0978_3.481
## 2    18088.8440   141366.0200      1108.0483      1024.0109      5079.8354
## 3    15281.7350   119121.7500      1563.5682      1148.3680      5834.8325
## 4    11567.5510    92462.8800       500.2725      1131.4443      7468.1660
## 5     21576.766    158943.120       1351.796       1201.111       2381.384
## 6     3191.2610    39452.0040       500.0225      1003.4628      3133.8696
## 7     6442.8700    70578.8200      1194.7349      1051.4238      5505.6050
##   437.0497_3.488 393.0776_3.464 298.0002_3.49 395.091_3.521 178.0526_3.481
## 2      8622.9920      3256.7703    47037.9730     2911.5117   1932230.2000
## 3      7041.3765      2940.2522    42788.4570     2672.5693   1811344.0000
## 4      8870.4910      2948.6920    43298.9380     3203.7642   1065876.6000
## 5      11053.334       2463.968     59809.562      2305.755    1492137.800
## 6      4157.9785      2987.5312    29050.8750     2508.1930    576666.1000
## 7      3944.3708      3215.4324    30930.8100     5999.9756   1247351.6000
##   246.0383_3.488 299.0779_3.509 412.1044_3.523 640.1347_3.515 359.1345_3.504
## 2     92775.0700      2514.0671      1316.6816      1059.8517      7766.5327
## 3     75916.8300      5905.4960      1395.9752       502.2117     10761.7310
## 4     97662.7300      4428.6410      1712.9783       500.2725      9616.3010
## 5     113493.880       2112.329       1042.024        500.000       7535.427
## 6     72250.6800      3174.4722      1563.0499       500.0225     10072.2500
## 7     59849.7340      4038.0550      1918.7172       502.2908     31457.8980
##   396.1297_3.506 242.0128_3.535 399.1658_3.513 432.1631_3.52 666.2108_3.475
## 2      1237.8220     15092.3380     14871.4610      500.0201      1416.0035
## 3      1081.2500      7215.1846     29974.5700     1380.7079      1618.9263
## 4       500.2725      4597.5000      5545.9253      500.2725      1036.3748
## 5        500.000       3201.710      20128.006       500.000        500.000
## 6       500.0225      4437.1504      7750.1367     5089.0770       500.0225
## 7       502.2908      2932.0889     14633.6920      502.2908      1110.3527
##   251.0128_3.524 404.0405_3.511 279.0487_3.569 241.1189_3.536 150.0562_3.542
## 2      1514.0778      1378.1066      1180.4450     39766.2970      1171.8206
## 3      1187.0214      2491.6528       502.2117     95559.9600      1434.4391
## 4      1249.9388      1597.4543      1334.9155     77710.1250       500.2725
## 5       2018.757       1505.133       1316.928      11695.774       1310.916
## 6      2546.0176      1509.6803      3898.3310     35093.3500       500.0225
## 7      8027.5960      2086.8123      1216.1870     43619.8550      2278.5050
##   287.0227_3.548 507.0806_3.582 565.0578_3.576 411.0792_3.55 489.2111_3.578
## 2     41345.4730      1448.2427      1177.1458     1696.9452       500.0201
## 3     15155.2930       502.2117      1004.4235     1300.8954      6157.4854
## 4     27982.4430       500.2725      1231.4302     1417.0740      1008.0990
## 5       3729.891        500.000        500.000      1033.423        500.000
## 6      2974.8430       500.0225       500.0225     1345.0096       500.0225
## 7     70927.5200       502.2908      1217.3944     1259.5208       502.2908
##   337.1469_3.591 194.0459_3.542 913.214_3.531 338.0879_3.557 622.0984_3.522
## 2       500.0201      4766.7570     1478.5022     23926.6350       500.0201
## 3       502.2117      8600.8620     1213.0704      6397.5176       502.2117
## 4      1047.5446      6345.9640      500.2725      2405.2570       500.2725
## 5        500.000       7711.624      1249.429        500.000        500.000
## 6      1246.6431     10094.8920      500.0225      2597.2285       500.0225
## 7       502.2908     18734.6290      502.2908      2083.7493       502.2908
##   559.0435_3.584 230.0128_3.569 331.0121_3.56 1141.2436_3.619 428.0976_3.601
## 2      1786.7450    126730.4700     1126.1914        500.0201       500.0201
## 3      1297.4121     38399.6400     1699.8720        502.2117       502.2117
## 4       500.2725      4776.5780     1268.7216        500.2725       500.2725
## 5       1050.114       1810.725      1482.222         500.000       1198.921
## 6       500.0225      4558.3430     3006.1926        500.0225       500.0225
## 7       502.2908      7235.9310     1488.0045        502.2908       502.2908
##   461.0863_3.571 891.2154_3.643 364.0958_3.594 680.165_3.608 255.1349_3.614
## 2      1315.3243       500.0201       500.0201      500.0201     22303.9140
## 3      1294.7432       502.2117       502.2117      502.2117     46002.7200
## 4      1070.9199       500.2725       500.2725      500.2725     36518.0000
## 5       1135.873        500.000        500.000       500.000       8328.170
## 6      1177.4474       500.0225       500.0225      500.0225     21621.3650
## 7      1189.2926       502.2908      1071.6423      502.2908     11909.5910
##   495.2229_3.594 571.1469_3.618 556.1624_3.635 525.0334_3.606 322.1105_3.605
## 2       500.0201       500.0201       500.0201     12501.2710       500.0201
## 3       502.2117      1323.5890       502.2117      7867.9565       502.2117
## 4      1286.0040      1080.4750       500.2725       500.2725       500.2725
## 5        500.000        500.000        500.000        500.000        500.000
## 6       500.0225      1036.8142       500.0225      1096.4861      1731.0074
## 7      1106.2970      1189.7152      1236.0323      1140.3828       502.2908
##   393.0495_3.605 427.197_3.64 383.0464_3.601 295.1298_3.641 585.0184_3.643
## 2     17994.1430    3006.5537      1747.9762     19796.1300      1617.0715
## 3     11281.4690    5215.8374      2125.0010      7887.5874     15123.0410
## 4      1547.2397    1750.5648      2248.8909      7556.4023       500.2725
## 5       2493.144     2250.605       1350.122      16807.713       1344.911
## 6      1083.0135    2734.3600      1515.9762      7550.4478      3683.7324
## 7      3176.7600    3191.1912      6360.2870     25827.3540      1398.2491
##   583.0211_3.647 609.0726_3.66 607.0749_3.657 611.069_3.647 250.0718_3.655
## 2      1251.8810      500.0201      1151.8369     1277.2717     20649.0600
## 3     13226.6140     1189.5818      1275.2057      502.2117      5720.1606
## 4       500.2725      500.2725       500.2725      500.2725     10667.2950
## 5       1067.132       500.000        500.000       500.000      11148.359
## 6      4161.7770      500.0225       500.0225      500.0225     10379.8700
## 7      1614.9852      502.2908      1095.3780     1317.0248      9006.9420
##   379.1607_3.652 336.1323_3.647 819.2194_3.7 203.0017_3.661 279.049_3.659
## 2     16945.3570       500.0201     500.0201     45271.3320     1586.7673
## 3     24049.4040       502.2117     502.2117    160459.3300      502.2117
## 4     10625.8910       500.2725     500.2725     54059.4060     1353.7037
## 5      13827.355        500.000      500.000      71851.030      1221.477
## 6     12091.8480      4356.7935     500.0225     38877.6880    11208.2470
## 7     40916.5200      1095.0127     502.2908     44831.3160     1226.9275
##   1303.2955_3.702 413.144_3.692 269.0163_3.668 1003.2656_3.716 222.0406_3.686
## 2        500.0201     1493.2852       500.0201        500.0201      5729.8335
## 3        502.2117     1677.7300       502.2117        502.2117      4179.1010
## 4        500.2725     1590.6039       500.2725        500.2725      4495.7610
## 5         500.000      1199.070        500.000         500.000       6324.002
## 6        500.0225     1636.8853      4438.7334        500.0225      4578.9760
## 7        502.2908     2880.2266      1152.2068        502.2908      6489.9920
##   607.1628_3.711 302.1145_3.69 1069.2473_3.702 841.2146_3.693 194.0458_3.657
## 2       500.0201    91857.8360        500.0201       500.0201      5241.9277
## 3      1142.7068    28181.7800        502.2117       502.2117      8256.8300
## 4       500.2725    15895.0300        500.2725       500.2725      8486.9320
## 5        500.000     25076.066         500.000        500.000       7414.563
## 6      1118.8005    18015.0040        500.0225       500.0225     10004.2940
## 7      1185.6836     8015.8564        502.2908       502.2908     15292.3330
##   835.1973_3.718 334.0517_3.708 638.0934_3.724 374.1587_3.706 295.0806_3.721
## 2       500.0201       500.0201       500.0201       500.0201      2551.5273
## 3       502.2117       502.2117       502.2117       502.2117      1578.5847
## 4       500.2725       500.2725       500.2725       500.2725      6792.6460
## 5        500.000        500.000        500.000        500.000       1362.611
## 6       500.0225       500.0225       500.0225      1364.5600      1525.8048
## 7       502.2908       502.2908       502.2908       502.2908      2028.1727
##   432.1213_3.706 997.2507_3.723 569.1307_3.754 373.1141_3.685 246.0753_3.721
## 2      1086.0332       500.0201      1258.9209      8083.2000      8153.1343
## 3       502.2117       502.2117      1486.8197      8978.2450      3739.3857
## 4       500.2725       500.2725      1545.0271      9669.3850     13370.0540
## 5        500.000        500.000        500.000       4972.398       5864.395
## 6       500.0225       500.0225      1154.3246     41840.9730      7869.1230
## 7      1022.6482       502.2908      2706.1228     18099.8770      6733.2935
##   443.0945_3.705 277.0353_3.723 785.1891_3.723 800.1466_3.728 471.0822_3.708
## 2      1024.4637      1568.9379       500.0201       500.0201      1299.6669
## 3      1124.5013      1134.8145       502.2117       502.2117      1479.6874
## 4      1109.6202      1435.7554       500.2725       500.2725      1441.3151
## 5       1000.000       1656.028        500.000        500.000       1001.342
## 6      1027.0779      2858.1775       500.0225       500.0225      2482.2444
## 7      1072.2911      1298.3939       502.2908       502.2908      1807.2285
##   1159.3041_3.727 1279.2478_3.734 747.2354_3.721 883.1453_3.774 1165.3189_3.729
## 2        500.0201        500.0201       500.0201       500.0201        500.0201
## 3        502.2117        502.2117       502.2117       502.2117        502.2117
## 4        500.2725        500.2725       500.2725       500.2725        500.2725
## 5         500.000         500.000        500.000        500.000         500.000
## 6        500.0225        500.0225       500.0225       500.0225        500.0225
## 7        502.2908        502.2908       502.2908       502.2908        502.2908
##   493.0631_3.69 769.2167_3.733 801.154_3.74 373.1514_3.715 439.1608_3.725
## 2     1971.8566       500.0201     500.0201      1381.0957      5220.8433
## 3     1739.1826       502.2117     502.2117      1860.4106      5158.2593
## 4     2370.0217       500.2725     500.2725      1082.3273      2868.0586
## 5      1546.894        500.000      500.000       1389.819      10824.269
## 6     4162.4580       500.0225     500.0225      2253.5060      6877.0703
## 7     3055.1045       502.2908    1040.0641      2120.3406      6261.7964
##   259.129_3.733 607.1633_3.738 245.0489_3.748 209.0532_3.773 197.0471_3.745
## 2     7273.8794       500.0201      1777.1166       500.0201       500.0201
## 3     4108.9155       502.2117      7832.0625       502.2117       502.2117
## 4     3302.0676       500.2725      2226.3115      1227.0742       500.2725
## 5      2128.313        500.000       5338.036       1355.779        500.000
## 6     2416.1467      1118.8005      6897.7646      7695.1580      5006.8410
## 7    33639.6450      1211.9608      5880.0845      1023.0393       502.2908
##   209.0455_3.749 583.1089_3.742 370.0981_3.747 431.1141_3.739 605.1484_3.739
## 2       500.0201      2004.8652     17987.9800      2087.0034       500.0201
## 3       502.2117      1863.5946     18174.6860      1372.4535       502.2117
## 4      1227.0742      1008.5159     11760.4410       500.2725       500.2725
## 5        500.000       1235.126       5629.892       1137.018        500.000
## 6      7695.1580      2917.7468     10777.8290      1138.9178       500.0225
## 7      1188.3182      2553.2305     28153.0530      1179.0244      1004.5817
##   1003.2655_3.721 447.0928_3.777 889.161_3.783 197.0453_3.76 979.2122_3.736
## 2        500.0201      5817.3184      500.0201      500.0201       500.0201
## 3        502.2117      2607.9136     1028.1815      502.2117       502.2117
## 4        500.2725      1321.8826      500.2725      500.2725       500.2725
## 5         500.000       1646.469       500.000       500.000        500.000
## 6        500.0225      1304.6113      500.0225     5006.8410       500.0225
## 7        502.2908      1368.0901      502.2908      502.2908       502.2908
##   593.1471_3.747 429.082_3.756 417.0951_3.717 109.0288_3.757 336.072_3.762
## 2       500.0201    69880.9400      1424.3392       500.0201    24309.2200
## 3       502.2117    38860.0230      1077.8129       502.2117    18206.6350
## 4       500.2725      500.2725       500.2725       500.2725    17938.7640
## 5        500.000      1068.796        500.000        500.000     10814.509
## 6       500.0225     1000.0450       500.0225      2511.1543    12824.3680
## 7      1070.0051      502.2908      1817.1829       502.2908    16711.3030
##   639.0783_3.758 497.0695_3.785 370.0972_3.765 243.1344_3.787 279.0984_3.799
## 2      6891.4270     13639.4670     10709.7960     79573.8500      1330.3252
## 3      6559.9937      5731.8560     18174.6860     29120.0330      3223.2485
## 4       500.2725      1049.1044     11760.4410     72831.1640      5079.8438
## 5        500.000        500.000       5629.892      13209.661       1466.146
## 6       500.0225      1066.2500     10777.8290     38053.1200      1446.6764
## 7       502.2908      1435.9784     28153.0530     17992.3380      1575.1718
##   1108.0095_3.804 585.0051_3.809 810.9784_3.814 816.9958_3.812 618.1838_3.802
## 2      44856.0600      2189.3810      2182.8752      2483.2370       500.0201
## 3      58556.5100     10752.0950     19287.7400     21774.9060       502.2117
## 4      45225.2850      1067.4426       500.2725      1575.5063      1030.1608
## 5       43306.582        500.000        500.000        500.000        500.000
## 6      57640.1050      1693.0485      1708.6609      2472.7148       500.0225
## 7      47952.0660      5656.9937      7793.5156     12349.9230      1097.2543
##   633.1142_3.808 600.982_3.815 649.0893_3.836 655.1071_3.826 883.1412_3.819
## 2       500.0201     5734.7124      1169.6640      1332.0315       500.0201
## 3       502.2117    37533.9400       502.2117       502.2117       502.2117
## 4       500.2725     3115.7146      1093.6445      1044.4434       500.2725
## 5        500.000      1094.854        500.000        500.000        500.000
## 6       500.0225     4487.0340      1229.8688       500.0225       500.0225
## 7      1303.1267    19456.4300      1350.6036      1026.3260       502.2908
##   606.9991_3.815 458.9733_3.815 412.977_3.815 399.0007_3.816 421.0558_3.818
## 2     12853.4630     12328.3250    15588.7610     22371.0600      1479.3531
## 3     69780.4200     37161.8000    22942.0700     47564.7200      1171.3115
## 4      4775.1460      8345.3830    11561.0220     15273.7170      1430.5155
## 5       2633.967       4435.841      8146.525      10219.755       1229.504
## 6     11777.0960     12020.8020    15848.5460     23609.7830     12992.2400
## 7     39775.2660     21458.2230    22016.2600     39299.3200      1292.7657
##   625.0354_3.814 107.0502_3.816 397.0034_3.815 189.0027_3.815 306.9561_3.814
## 2      1024.6462     36762.2600    198955.5500    103996.8000     34684.1300
## 3      1007.0374     67776.0160    467526.1600    228851.7500     47803.5700
## 4       500.2725     21243.6780    119134.7700     72777.1900     32122.1290
## 5       1035.604      17190.746      68001.510      55028.703      23527.709
## 6      2980.5059     32108.3570    195411.7200    106728.0000     36639.8550
## 7      1322.2114     50042.4300    370974.9000    167055.0200     43562.5700
##   187.0079_3.815 631.0532_3.815 124.0486_3.843 859.0857_3.824 459.093_3.801
## 2   2834762.5000       500.0201       500.0201       500.0201    33601.5200
## 3   5661702.5000       502.2117       502.2117      1100.2384    19828.3460
## 4   1783193.9000       500.2725       500.2725       500.2725     1412.8165
## 5    1285457.800       1042.229        500.000        500.000      1224.051
## 6   2722107.0000      2436.1067      3670.5625       500.0225     1185.4417
## 7   4625648.5000      1033.1272       502.2908       502.2908     1568.9005
##   187.0387_3.806 108.0216_3.832 208.0615_3.836 230.9963_3.838 211.0613_3.866
## 2     95299.8000       500.0201      2304.3200      1002.7122      4237.9336
## 3    120844.6200       502.2117      5911.1685     13124.7980      4617.0283
## 4     68292.0550       500.2725      3792.1785     24363.0300      6673.5120
## 5      50560.727        500.000       8967.401      77042.875       3417.560
## 6     99994.7000      5548.4710      5751.2534      2117.4990     76985.8800
## 7    127672.4700       502.2908      5121.3525     42761.0040      5618.1167
##   336.0719_3.763 212.0937_3.815 211.0971_3.846 187.0101_3.824 123.0452_3.87
## 2     24309.2200      1598.5942      1665.1260   2834762.5000     1613.4084
## 3     18206.6350      1042.9775       502.2117     28989.6640     1807.6850
## 4     17938.7640      1875.5529      1493.0270     37131.5740     2024.4840
## 5      10814.509       1206.836       1288.049    1285457.800      1806.485
## 6     12824.3680      1691.9846      2621.9620   2722107.0000    33680.5660
## 7     16711.3030      1140.2140      2047.3496   4625648.5000     1728.0970
##   403.066_3.865 907.1941_3.871 673.1446_3.853 333.0066_3.893 476.0359_3.919
## 2      500.0201       500.0201       500.0201     17232.4450      1494.5510
## 3     3756.6787       502.2117      1089.0626     47056.8360      1867.0461
## 4      500.2725       500.2725       500.2725      1098.1785      1778.4714
## 5       500.000        500.000        500.000       1530.248        500.000
## 6     1015.0013       500.0225       500.0225      2223.3254      1605.4033
## 7     6201.0117       502.2908      1034.3046      1572.0591      1912.6282
##   446.1142_3.879 679.1625_3.856 913.2118_3.895 461.0857_3.898 335.0215_3.886
## 2       500.0201       500.0201       500.0201      1110.2135     10626.4850
## 3       502.2117       502.2117       502.2117       502.2117     12157.3430
## 4       500.2725       500.2725       500.2725       500.2725      1012.2592
## 5        500.000        500.000        500.000        500.000       1066.522
## 6      1101.0021       500.0225       500.0225      1463.9512      1071.4332
## 7       502.2908       502.2908       502.2908      1278.7991      1256.3544
##   295.0252_3.897 264.0876_3.875 657.1659_3.876 445.1072_3.893 217.0173_3.88
## 2      1162.7778     17601.1450       500.0201      1099.7151    20278.4880
## 3      1033.2161     23898.5780       502.2117      2238.2783    33048.5470
## 4      1106.0292     10057.5160       500.2725      1164.7128     7707.6240
## 5       1192.085       8180.380        500.000        500.000     13451.042
## 6      2119.4683     10463.4760       500.0225      2895.3440     6215.3720
## 7      1432.7365     37543.0900      1183.1326      1339.4325    10430.6820
##   351.07_3.888 431.0979_3.907 751.1822_3.898 283.093_3.891 363.021_3.933
## 2   19412.9400     63325.5740       500.0201    10465.2230     6603.6330
## 3   31765.0620     17252.3400       502.2117    12388.6270    35801.2150
## 4   19264.6070       500.2725       500.2725     7955.6553     1812.1115
## 5     6007.056        500.000        500.000      3184.073      1472.760
## 6   24174.4500       500.0225       500.0225    10926.5240     1213.8076
## 7   39197.2000      1388.0386       502.2908    17390.2000     1470.4209
##   283.0822_3.893 517.1331_3.892 745.1653_3.9 368.0804_3.895 513.0964_3.899
## 2     94270.9300      1225.8290     500.0201      4963.2153      1226.3809
## 3    162427.9200       502.2117     502.2117     21955.5920      1745.1395
## 4     74429.4140       500.2725     500.2725     16235.8670       500.2725
## 5      27075.120        500.000      500.000       4350.932       1058.601
## 6    117184.5900      3785.7686     500.0225     10719.0870      1888.6066
## 7    224133.0200      1204.0728     502.2908      7148.1577      1687.0594
##   217.1081_3.912 372.1116_3.914 434.1396_3.922 432.1447_3.927 331.1218_3.932
## 2     16106.4760      7557.4870       500.0201       500.0201       500.0201
## 3     16787.7700      1222.4287       502.2117       502.2117      4598.1577
## 4     13261.0880     35055.9100       500.2725       500.2725      1406.8314
## 5       9372.490      13287.363       1115.323        500.000       1032.981
## 6     22671.4820       500.0225       500.0225      1660.1782       500.0225
## 7     15859.5300      1118.2866      1079.3500      1137.2874      2514.8323
##   237.0359_3.933 279.0491_3.95 167.0349_3.921 350.088_3.952 584.1374_3.972
## 2       500.0201     1542.5104      1112.2850    65342.4700      1059.7166
## 3      1216.0801     1401.9796       502.2117    94949.5000       502.2117
## 4      1077.5962     1434.3649      1655.5316    79700.3100       500.2725
## 5       1132.075      1422.325       1029.521     11276.089        500.000
## 6       500.0225    26237.7710      1593.4023    24731.6330      1866.1840
## 7      1188.8030     1348.4651      1957.2369    28154.8320      1459.4160
##   210.0419_3.959 396.1279_4.011 1122.0249_4.032 337.1446_4.025 614.1849_4.02
## 2       500.0201       500.0201      19439.8140      1616.4110      500.0201
## 3       502.2117      1576.9596      27973.2340      1111.9446      502.2117
## 4       500.2725       500.2725       1021.6447      1552.3207      500.2725
## 5        500.000        500.000         500.000        500.000       500.000
## 6       500.0225       500.0225        500.0225      1285.7370      500.0225
## 7       502.2908      1235.6437        502.2908      1302.7362      502.2908
##   427.197_4.049 194.0491_4.031 662.1454_4.018 514.136_3.993 428.0955_4.037
## 2     3337.3948     14809.8820       500.0201     1812.8403       500.0201
## 3     6070.5190     20284.2340       502.2117     3762.1628      1061.6772
## 4     2754.9048     17819.6390       500.2725     2912.2285       500.2725
## 5      3383.081      20059.430        500.000      1272.891        500.000
## 6     3190.0864     27963.5430       500.0225     1481.6903      1196.3405
## 7     4479.4890     47632.6250       502.2908     1670.4417       502.2908
##   150.056_4.032 656.1287_4.025 216.0277_4.034 194.0459_4.033 313.995_4.031
## 2     1134.0117       500.0201      1784.0631     14809.8820     1360.2754
## 3     1613.3573       502.2117      1692.0667     20284.2340     2456.6650
## 4     1438.1763       500.2725      2174.2688     17819.6390     2465.7056
## 5      1544.032        500.000       2707.154      20059.430      1854.125
## 6     2385.1660       500.0225      2134.5017     27963.5430     2813.4988
## 7     3688.2927       502.2908      4192.8840     47632.6250     4045.3906
##   678.1113_4.032 411.0759_4.059 281.1142_4.039 429.0815_4.032 606.1191_4.053
## 2       500.0201      3425.7554     12571.5180     42738.9300      1031.2367
## 3       502.2117      3658.3208     13000.7930     33700.7800      1118.6216
## 4       500.2725      3619.0388     14959.9410       500.2725      1032.2228
## 5        500.000       2601.438       7128.849        500.000       1012.195
## 6       500.0225      2628.2961     11598.5800      1191.8750       500.0225
## 7       502.2908      1806.5068     11206.6930      1244.0428       502.2908
##   433.0646_4.045 373.1139_4.04 495.223_4.067 255.1349_4.042 379.1607_4.047
## 2      6830.7570    15089.2660     1794.7240     43546.0470     30632.3950
## 3      5472.2750    14828.4090     1200.6797    115880.2100     43233.9020
## 4      1083.8410    20148.7340     1311.6964     92772.0700     17412.6950
## 5        500.000      7662.456      1129.322      13672.811      20755.982
## 6      1128.6172    15213.1190     1113.5663     43302.2770     21854.0600
## 7      1092.2622    28159.1000    13910.3040     21668.3800     80555.9100
##   401.1434_4.052 184.0979_4.054 571.1476_4.081 201.0227_4.086 417.1173_4.046
## 2      8576.2990      8380.1650       500.0201    276003.0600      1107.0532
## 3     10649.2420     15776.3730       502.2117    566404.6000      1265.0997
## 4      4732.8823      5861.9404      1209.0028      2771.8438       500.2725
## 5       5780.745      22387.355        500.000       2410.425        500.000
## 6      6853.7764     10352.3700       500.0225      2831.0718      1369.1118
## 7     18687.4700     10717.2240      1363.8920      2442.7874      1511.8750
##   351.1236_4.04 562.1922_4.035 397.1911_4.067 367.2236_4.071 447.0921_4.067
## 2     1080.4198       500.0201       500.0201     18045.5400      8853.1700
## 3      502.2117      1210.4100       502.2117     25799.0040      9127.3290
## 4     1200.1506      1155.6400       500.2725     18495.1210      1358.0940
## 5       500.000        500.000        500.000      10054.541      16708.617
## 6     1494.5300       500.0225       500.0225     21946.8850      5332.6406
## 7     1529.7859      1544.2903       502.2908     30512.0490      6793.3160
##   375.1294_4.074 181.0507_4.062 297.0975_4.072 489.2123_4.076 201.0227_4.09
## 2      9512.9060       500.0201    118699.6950       500.0201   276003.0600
## 3      8880.4990       502.2117     97780.7500     12474.1380   566404.6000
## 4     12815.9700      1146.7318      1337.3105      1802.8375     2771.8438
## 5      10566.450       1582.588       1780.940        500.000      2410.425
## 6     11239.8100      9212.3840      1384.6410       500.0225     2831.0718
## 7     19962.2800      2154.8665      2276.9860      1123.0166     2442.7874
##   765.197_4.127 365.0863_4.095 680.2306_4.136 151.04_4.082 853.2516_4.121
## 2     1007.2653     23400.2130       500.0201    2087.7424       500.0201
## 3      502.2117     20392.6020       502.2117    5241.4450       502.2117
## 4      500.2725      1099.2460       500.2725    5335.6807       500.2725
## 5       500.000       1189.499        500.000     2476.194        500.000
## 6      500.0225      1167.1471       500.0225    2929.0605       500.0225
## 7     1107.9886      1638.7913       502.2908    2539.6985      1379.6024
##   165.0557_4.102 204.0666_4.129 681.2357_4.115 247.0798_4.12 908.2639_4.165
## 2     15463.0880     16845.3070      1350.4375     1013.4516       500.0201
## 3     14762.5730      5050.5063       502.2117     1824.5050       502.2117
## 4      6505.9365      9398.2470       500.2725     2595.5125       500.2725
## 5       5094.479       6261.242        500.000      5533.848        500.000
## 6      6902.4536      7298.9946       500.0225     1768.2439       500.0225
## 7     81986.0800      8835.7730       502.2908     5627.4920       502.2908
##   185.0819_4.129 246.0752_4.139 531.1447_4.141 497.2379_4.163 1122.0248_4.125
## 2     31914.3950      9816.3860      1195.2208      1588.1838      18176.4900
## 3     31678.7660      5029.8696      1455.2782      1170.0887      31517.2850
## 4     39332.9060     15328.4990      1152.6781      1633.1454        500.2725
## 5      20293.197       6565.389       1076.325       1250.345         500.000
## 6     43057.2340      9835.3740      1312.1841      1418.8896        500.0225
## 7     54471.0550      8589.8850      1625.8005      3376.2478        502.2908
##   845.2477_4.186 363.1658_4.172 418.1327_4.164 565.0619_4.188 569.1299_4.178
## 2       500.0201      7593.4790       500.0201      1276.8286      1245.6401
## 3       502.2117      9047.3120       502.2117      2187.6565      1562.2822
## 4       500.2725     12075.4390       500.2725       500.2725       500.2725
## 5        500.000      11406.414        500.000        500.000       1309.736
## 6      1145.1302     38251.9960       500.0225      3525.0964      1004.5967
## 7      1203.7396     78509.0900       502.2908      1854.6865      1456.9252
##   245.0488_4.187 675.1511_4.19 691.3179_4.171 813.255_4.198 345.1933_4.201
## 2      3896.8047      500.0201      1084.5996      500.0201      1314.3209
## 3      4913.7515     1018.6769      1226.0865      502.2117      1571.9619
## 4      3427.6433      500.2725      1213.0780      500.2725      1963.8844
## 5      13658.554       500.000       1055.245       500.000       1145.560
## 6     26215.6680      500.0225      1061.5448      500.0225      2622.9211
## 7     20793.8630      502.2908     13143.5880     1297.0577     19960.6880
##   1041.2898_4.199 579.2066_4.211 714.3024_4.193 710.0906_4.208 461.0817_4.193
## 2        500.0201      1096.4995       500.0201       500.0201      1559.1384
## 3        502.2117       502.2117       502.2117       502.2117       502.2117
## 4        500.2725      1189.3319       500.2725       500.2725      1018.1447
## 5         500.000        500.000        500.000        500.000       1307.606
## 6        500.0225      4442.6600       500.0225       500.0225      1383.2630
## 7        502.2908      1456.6451      8200.0220       502.2908      1259.8547
##   285.0968_4.206 211.0967_4.185 431.1146_4.185 913.2113_4.211 485.0499_4.198
## 2      1591.0035      2141.0100      1492.3569       500.0201       500.0201
## 3      1198.2834      1366.0497      2108.5652       502.2117      1066.2404
## 4      1347.8960      1686.0962      1187.8210       500.2725       500.2725
## 5       1243.912       1193.337        500.000        500.000        500.000
## 6      2118.4414      6931.2485      1646.1582       500.0225      1221.0613
## 7      1457.1495      1860.4698      2051.8480       502.2908      1110.7401
##   807.2393_4.206 413.1426_4.219 137.0244_4.225 891.2172_4.205 1141.2441_4.201
## 2       500.0201      2777.5090      1388.5740       500.0201        500.0201
## 3       502.2117     14651.1190      1873.6206       502.2117        502.2117
## 4       500.2725      7951.3140      1760.3980       500.2725        500.2725
## 5        500.000       4579.056       2756.803        500.000         500.000
## 6       500.0225     13593.5660      3097.1704       500.0225        500.0225
## 7      1009.4717     72335.5860      4428.3840       502.2908        502.2908
##   673.1455_4.198 476.0415_4.203 465.0845_4.208 123.0452_4.211 445.1115_4.233
## 2       500.0201       500.0201      1415.1337      2133.5618      1439.3954
## 3       502.2117      1049.3372      2255.6487      1047.7245      2993.4424
## 4       500.2725       500.2725      1904.9906      2364.5676      1467.6023
## 5        500.000        500.000       1205.233       1380.799       1369.613
## 6       500.0225       500.0225      2061.0295     97200.3360     14130.6420
## 7       502.2908       502.2908      6454.0320      1342.1523      2321.4463
##   212.0968_4.21 108.0218_4.217 907.1956_4.201 679.1604_4.197 892.2207_4.211
## 2      500.0201       500.0201       500.0201      1211.0000       500.0201
## 3      502.2117       502.2117       502.2117      1610.2859       502.2117
## 4      500.2725       500.2725       500.2725      1168.6095      1006.4688
## 5       500.000        500.000        500.000        500.000        500.000
## 6     1060.3683     15684.2350       500.0225      1703.8150       500.0225
## 7      502.2908       502.2908       502.2908      1724.7579       502.2908
##   689.1166_4.213 488.0429_4.206 657.1681_4.216 815.077_4.202 1135.2278_4.215
## 2       500.0201       500.0201      1088.0382      500.0201        500.0201
## 3      1767.0101       502.2117       502.2117      502.2117        502.2117
## 4       500.2725       500.2725       500.2725      500.2725        500.2725
## 5        500.000        500.000        500.000       500.000         500.000
## 6       500.0225       500.0225       500.0225      500.0225        500.0225
## 7       502.2908       502.2908       502.2908      502.2908        502.2908
##   447.092_4.187 559.0453_4.234 347.1678_4.233 361.1501_4.225 1132.0633_4.207
## 2    14209.7500       500.0201      1978.9418     18063.7150        500.0201
## 3     6538.0137       502.2117      4885.0073     48543.9380        502.2117
## 4     1221.7495       500.2725      6896.6960     13687.7770        500.2725
## 5      9892.394       1210.506       4696.693      12739.073         500.000
## 6     3765.2014      2102.8110      5900.6206     17000.6580       2203.8574
## 7     4402.0910      1061.7600     20057.3160     31987.8360        502.2908
##   439.1607_4.307 466.0888_4.204 401.1094_4.24 503.2011_4.23 211.0615_4.235
## 2     35630.7420      1155.8306     1356.3113      500.0201      9299.7800
## 3     23377.7200      1212.0710     1017.2500      502.2117      5661.7524
## 4     32249.9840      1130.3230     1140.9067     1004.0062     14144.8170
## 5      23424.883        500.000      1192.040       500.000       6879.601
## 6     20375.0550      1008.7882    12783.1430     2787.1323    222310.8100
## 7     48064.6640      2062.6162     1082.3772     1340.5103     11281.4460
##   295.0815_4.242 363.0692_4.266 269.1506_4.275 481.0163_4.286 361.0666_4.291
## 2      5294.9746      1719.5027     55917.7420       500.0201       500.0201
## 3      1994.1454      1519.1920     56339.6800      1070.1798       502.2117
## 4     12367.1240      3087.0342    106905.8600      1194.2478      1052.2242
## 5       1849.375       1509.568      61634.270       1139.437       1005.257
## 6      1354.1439      1696.7412     65104.3100       500.0225      1268.7782
## 7      2633.7764      2583.0503     97614.0860      1564.8662      1169.2520
##   459.0361_4.296 745.1266_4.269 429.0571_4.306 265.1192_4.316 449.1074_4.301
## 2      1225.6070       500.0201       500.0201     13066.9110      5779.1270
## 3      1258.0916       502.2117       502.2117     15573.8610      4929.6520
## 4      1099.7789       500.2725       500.2725     22505.9510      1634.0016
## 5       1185.275        500.000       1181.836      18379.248       1670.182
## 6      1223.4037       500.0225       500.0225     14431.5550       500.0225
## 7      1103.3473       502.2908      1193.2788     30736.5470      1889.6991
##   199.0068_4.328 333.0047_4.33 459.1504_4.33 492.1884_4.319 252.0891_4.335
## 2     22453.9340    40354.1760    27175.8360       500.0201       500.0201
## 3     32792.8870   159986.2800    16161.5570       502.2117       502.2117
## 4    123501.5900     1782.3069     9640.4700       500.2725       500.2725
## 5      44842.332      1665.914     11853.272        500.000        500.000
## 6      7873.2603     2017.9968    13427.3520       500.0225       500.0225
## 7      9935.0310     2137.6326    11292.5650       502.2908       502.2908
##   572.2528_4.339 197.0819_4.344 363.1657_4.345 359.1344_4.351 229.017_4.354
## 2     17158.7680     27600.6270     13217.0990      2929.5144     3282.8772
## 3      5759.8003     18742.1880      6192.3810     10011.0530    25208.5880
## 4      4977.1777     37192.6900     10307.2170      4351.0894    10712.5590
## 5       4262.561      16994.816       3932.929       1805.749     12468.570
## 6     12581.1950     42092.0860     12115.0640      3142.5696    16434.3140
## 7     13409.0150     47107.3870      9359.7760     20665.8570    16348.3190
##   385.1685_4.355 295.0242_4.354 335.0244_4.36 640.3332_4.371 243.0329_4.371
## 2     27485.6500      1037.8563    30748.2830      5514.1333      2071.1892
## 3      5134.5864      1361.5409    44077.8100      6525.2646      9016.1200
## 4     22228.1740      1694.0413     1166.7769      7909.3857      4185.2940
## 5      12024.319       1146.532      1948.247       6326.681       6490.809
## 6     41181.6900      1123.1445     1594.8630      2940.4482      5720.7095
## 7     20923.7970      1223.4404     1316.0590     12598.6220      7917.5600
##   446.1831_4.341 425.145_4.374 514.1681_4.367 343.0855_4.396 495.1174_4.369
## 2      1560.2617    14722.6870       500.0201      8483.2580      3014.2500
## 3      1121.1812     4872.1855       502.2117     28780.3480      1872.8999
## 4      1361.3481     9586.8955      1026.9316      8179.7170      1532.4000
## 5        500.000     11847.822        500.000      24581.084       1267.245
## 6      8808.3600     8369.7480      2427.3208      5976.2163      1544.0000
## 7      1294.7365    13045.5400      1197.7728     12347.5630      3046.0417
##   217.0172_4.4 397.1895_4.429 533.1257_4.426 527.1086_4.425 455.1062_4.407
## 2   58557.6330       500.0201      1439.5072      1117.9026      1394.1925
## 3   47241.5300       502.2117      1081.0302      1266.9210      3071.6780
## 4    4373.0186      1564.3976       500.2725      1091.9269       500.2725
## 5     8832.745        500.000       1340.569        500.000        500.000
## 6    3322.8098      1122.5442      1077.5782      1105.8402       500.0225
## 7   12286.2250      1581.0319      1646.5192      1971.3319      1037.0580
##   363.0234_4.453 517.0977_4.399 465.1366_4.417 397.1496_4.415 817.2886_4.438
## 2     14996.7440      1303.6475      1261.2980      1728.5679       500.0201
## 3     88644.1500       502.2117      1157.9459      1439.8370       502.2117
## 4      9155.0590      1515.7781       500.2725      1454.4977       500.2725
## 5       4044.874        500.000        500.000       1406.541        500.000
## 6      3701.5623      1636.8439      1123.7861      2502.4536       500.0225
## 7      4041.2890      1484.1147      2097.8298      3281.9387      1516.2362
##   485.1661_4.43 361.0646_4.442 363.0701_4.451 429.0565_4.442 459.0924_4.452
## 2    28476.8400       500.0201      1267.2815      1903.0104      1083.5731
## 3    25053.0980       502.2117      2514.6628       502.2117      1466.3830
## 4    33872.0000       500.2725      1640.8085      1088.0776       500.2725
## 5     18329.996       1200.162       1702.103        500.000       1342.490
## 6    21684.7440      1011.9418      1719.3994       500.0225      1197.8843
## 7    16546.4820      1386.5675      1816.7646       502.2908      1592.6484
##   391.0993_4.492 445.0782_4.484 396.1124_4.459 427.1588_4.465 405.1764_4.467
## 2      2134.0005     36958.0860      3297.0050     18692.2660     75606.0550
## 3      1858.5024      9651.5580      8763.8820     27626.5410    105838.6100
## 4      2473.1365      1310.5109      3563.5900     10963.8770     36379.2970
## 5       1274.227       1040.282       2283.335      13559.532      50422.453
## 6      2064.2227      1429.5366      8070.8980     13868.0790     46699.6900
## 7      1378.0276      3928.9548     10723.8710     28537.1640    130460.7600
##   565.1557_4.485 243.0779_4.486 245.0937_4.487 417.1192_4.5 509.0959_4.5
## 2      1897.1666     98969.2600     34343.2070     500.0201    1274.5331
## 3      1021.9170     52586.6760      8035.0215     502.2117    1197.6566
## 4      1644.3389     45230.1400      6770.9424     500.2725    1364.6416
## 5       1152.575      43097.770      10609.345      500.000     1022.691
## 6      7180.3640     21415.4220      5492.7200    1072.8165    1218.3741
## 7      1630.7605     39697.0300      7075.2400    1442.2354    1625.5409
##   212.0065_4.503 580.1557_4.511 297.1062_4.504 365.0866_4.514 297.0975_4.498
## 2       500.0201       500.0201     18571.6330     46667.7900    265259.0600
## 3      1022.4869       502.2117     17202.4800     35284.9500    211687.7000
## 4       500.2725       500.2725       500.2725      1740.0006      1403.2051
## 5        500.000        500.000        500.000       1288.222       1367.149
## 6       500.0225       500.0225      1220.2224      1295.2630      1423.8284
## 7      1486.0110       502.2908      1410.9357      2355.2570      2220.7412
##   617.1836_4.515 501.1339_4.505 447.0919_4.504 181.0503_4.495 795.2377_4.518
## 2      6491.5957      1356.5575     12255.3770      1029.6250       500.0201
## 3      4387.0020      1064.6024     12365.8220       502.2117      1082.4540
## 4       500.2725       500.2725      1192.0284       500.2725       500.2725
## 5       1129.443       1015.445      26084.623       1111.155        500.000
## 6      1008.0633      1118.3269      6507.1313     15393.7630       500.0225
## 7      1075.1255      2011.5920      8644.8710      1972.9110       502.2908
##   801.2549_4.519 549.1948_4.514 443.1248_4.497 345.1938_4.506 521.1082_4.508
## 2       500.0201      1080.6757      1314.9849      1267.3481     10740.6610
## 3      4069.1458      1090.1663      4971.6084      1438.2470     13150.9375
## 4       500.2725      1070.9548      1884.1931      2342.1475      1017.5289
## 5        500.000        500.000       1631.061       1537.169       1401.632
## 6       500.0225      1173.4874      3531.4421      2251.9114      1400.6052
## 7       502.2908       502.2908     17172.1270     32250.7950      1293.2250
##   411.1279_4.49 411.1654_4.559 714.3028_4.511 692.32_4.516 833.2468_4.513
## 2     3198.3208      2218.7420       500.0201     500.0201       500.0201
## 3     1807.5377      1645.8203       502.2117     502.2117      1170.9766
## 4     1960.1522      2130.8347       500.2725     500.2725       500.2725
## 5      1357.588       3635.758        500.000      500.000        500.000
## 6     2660.6000      2767.2250       500.0225     500.0225       500.0225
## 7     2799.5560      5365.7260     16415.5300   13039.1040      8833.0330
##   481.1298_4.503 713.2993_4.51 465.1045_4.511 475.1137_4.509 403.1133_4.514
## 2      1835.2778      500.0201      1859.0535      1847.5371      1518.1235
## 3      7389.5327     2150.7368     11710.7960      7959.3610      6069.4570
## 4      3776.6536     1023.2011      5262.3280      3925.9343      3340.6191
## 5       3245.185       500.000       2839.534       1782.431       2240.783
## 6      6306.4340     1622.5605      7581.4556      4740.9100      6226.2670
## 7     28111.5350    44106.5740     51713.2900     23622.3700     32393.1540
##   691.3175_4.507 345.1554_4.506 779.2721_4.515 433.1136_4.519 792.3445_4.502
## 2       500.0201     20852.3030      1000.0402     36876.1050       500.0201
## 3      1424.4734    147361.2700       502.2117    130782.1000       502.2117
## 4       500.2725     63373.2660       500.2725      1524.9140       500.2725
## 5        500.000      28485.637        500.000       1178.540        500.000
## 6      1198.5745    105147.3800      1074.5065      2467.6080       500.0225
## 7     34889.7770    779903.9000       502.2908      5195.4673       502.2908
##   413.1426_4.51 544.1472_4.514 345.1556_4.509 446.1795_4.499 814.3239_4.509
## 2     3822.1885      1002.5149     20852.3030      1210.6852       500.0201
## 3    22333.0230       502.2117    147361.2700      1340.8474       502.2117
## 4    12796.6170       500.2725     63373.2660      1146.6337       500.2725
## 5      5930.739        500.000      28485.637        500.000        500.000
## 6    19394.1520      1094.1141    105147.3800      9838.2500       500.0225
## 7   108875.2300       502.2908     41562.0980      1084.7963       502.2908
##   572.2105_4.512 491.191_4.507 514.1698_4.543 341.1234_4.519 531.0773_4.532
## 2       500.0201      500.0201      1124.3052      3259.0725      4715.7686
## 3       502.2117      502.2117       502.2117      1429.3102     12150.3150
## 4       500.2725      500.2725       500.2725      1860.2935      1904.4490
## 5        500.000       500.000        500.000       2248.730       1446.962
## 6       500.0225      500.0225      2525.5530     12178.7810      1547.4824
## 7      2657.9800     1205.8857       502.2908     22193.3550      1471.4215
##   389.0919_4.531 541.2651_4.526 385.1861_4.524 204.0666_4.532 272.0538_4.533
## 2     30853.8380     49211.2200      8278.1350     56397.7420     11972.3990
## 3     24835.9410     33827.0080      9187.4600      5907.1055      1354.5878
## 4     30947.1270     41123.1520      3388.3657     31545.1680      7493.1416
## 5      21487.709      26071.283      13857.561      20137.030       4345.635
## 6     24255.9570     45082.9770      8629.1430     22654.2070      4862.6950
## 7     11179.1610     19061.7000      9608.0625     21858.1700      5151.4517
##   224.062_4.537 383.1529_4.559 425.0363_4.553 201.0228_4.555 203.0172_4.555
## 2    21967.3700     27211.6950     40519.2930   1109838.1000     49373.6520
## 3     5963.2144      6209.7495    163893.1900   2740269.2000    107369.7000
## 4    17189.0300     17199.4980      1391.3663      8847.9020       500.2725
## 5      9347.290       9585.461        500.000       4505.520       1247.953
## 6    20445.3960     34320.6200      1161.2998      8279.4920      1348.0198
## 7    11412.6850     10278.6220      1670.5409      4023.0327      1271.0688
##   1122.0244_4.55 493.1666_4.573 366.0851_4.55 269.1614_4.571 270.1538_4.572
## 2     38332.2420      8883.6770    11007.1720     12831.2860     24905.3750
## 3     48068.5940     12363.5110     8576.7040     11171.7190     20781.9600
## 4      1629.8573      1725.0573      500.2725     23895.3380     48914.4800
## 5       1559.223       1870.743      1732.607      13119.943      26293.598
## 6      1102.7025      2252.5078      500.0225     10984.5340     29178.0500
## 7       502.2908      2590.3523     4142.9850     18660.1070     37244.0430
##   269.1505_4.575 389.0981_4.564 561.29_4.571 151.04_4.576 536.1898_4.583
## 2    168327.2300     11812.0460    1980.8004    1379.4852       500.0201
## 3    131175.2000      8569.8790    1417.0460    7649.9014       502.2117
## 4    304923.7000     22971.7050    8845.7830   12576.1455       500.2725
## 5     166453.530      10959.376     2650.157     2479.001        500.000
## 6    170655.0500     11111.5205    2065.5764    3811.4640      1092.3750
## 7    211573.1400     12799.5980    3872.6875    3606.0684       502.2908
##   355.1037_4.621 238.0776_4.607 507.2078_4.607 237.1243_4.614 550.2061_4.628
## 2      1749.6000     11613.2550      1238.8121      6867.7940      1039.6333
## 3      3452.0479      3164.5040      4206.1360     18515.7620       502.2117
## 4      2007.5636     17256.9320      5436.7163     19349.8650       500.2725
## 5       1279.937       8977.313       4871.195      25809.947        500.000
## 6      5165.5127     14343.5070     11767.0720     10065.1700       500.0225
## 7     13623.0870      7438.6640      5104.5513     45283.1250       502.2908
##   482.2186_4.626 602.1667_4.638 618.1913_4.649 400.1429_4.669 440.1641_4.66
## 2       500.0201       500.0201      1001.4805      4314.1313    22935.5310
## 3       502.2117       502.2117       502.2117      5263.6060    14449.4760
## 4       500.2725       500.2725       500.2725      3461.4475    18276.0270
## 5        500.000        500.000        500.000       2466.310     12178.715
## 6       500.0225       500.0225       500.0225      1867.3164    12900.1890
## 7      1340.7145       502.2908       502.2908      4643.1390    31328.1370
##   461.1426_4.66 439.1608_4.66 539.2494_4.677 477.1039_4.686 245.0485_4.677
## 2    22342.8300    84061.9600     52808.7300      1336.4696     13326.7720
## 3    13347.7220    47145.1400     41944.2030      1394.1194      1610.6150
## 4    18871.0570    70785.0800     45355.2900       500.2725      6064.7495
## 5     14962.760     50771.340      27440.580        500.000      40403.617
## 6    13647.0330    49392.3320     38826.9060      1266.9812     59262.8500
## 7    29214.3520   127771.7400     16958.5040      1292.3481     52591.4300
##   395.1144_4.677 354.1007_4.717 473.1448_4.73 600.2843_4.732 339.1082_4.74
## 2       500.0201      3306.9010    27960.9120     81664.0100     4630.5767
## 3       502.2117     12077.5050     2878.7468     25238.9080     3142.1590
## 4      1031.8560      3519.6260    10558.7110     28730.5370     5125.0107
## 5        500.000       2596.864      4601.004      32069.043      5948.137
## 6       500.0225      2501.9280     1864.7656     50578.0400     5521.8984
## 7      1044.7402     14006.8850    17641.1620     34181.2100    16994.5570
##   305.0561_4.737 690.3154_4.751 243.1236_4.74 175.0975_4.743 343.0855_4.765
## 2       500.0201      1196.3077    16059.1480       500.0201     18579.6050
## 3      1489.6871      6130.7104    12399.7705      1557.9905     75148.2660
## 4      1089.7163      5252.0000    18358.4600      1878.2666     20522.6330
## 5       1152.188        500.000     11756.490        500.000      56479.830
## 6       500.0225       500.0225    20118.5620      1349.3058     16951.3180
## 7      1038.4114      5154.5100    56901.9570      1206.2797     27130.4700
##   220.0979_4.733 415.0625_4.788 347.0774_4.782 171.0487_4.824 541.2651_4.807
## 2      1638.4552      1021.1602       500.0201       500.0201    122914.7800
## 3      1724.1215       502.2117      1041.0525       502.2117     75771.5600
## 4      1005.2814       500.2725       500.2725       500.2725     88029.5000
## 5        500.000        500.000        500.000        500.000      53759.320
## 6       500.0225      1044.3330       500.0225       500.0225     95655.7100
## 7      1865.9061       502.2908      1173.3026       502.2908     38066.9600
##   137.0243_4.815 495.2227_4.812 517.2049_4.804 565.1563_4.799 366.1016_4.846
## 2      1662.0676     11146.9280      2882.8188      2647.6060      3199.0903
## 3      3193.0107      1366.4086       502.2117      1756.9518     23928.9410
## 4      2641.7173      2352.6565       500.2725      1647.2811      5646.1357
## 5       5506.447       1095.126        500.000       1374.983       7875.066
## 6      4906.6880      1566.5435       500.0225     17029.7640      5112.7495
## 7      8481.0830     66939.6700     17211.6200      1484.8522      5723.1520
##   411.2021_4.884 383.153_4.885 507.2079_4.889 433.113_4.886 553.0631_4.891
## 2     11232.7540    70643.2900      1886.9634   102240.2200      9312.3955
## 3     17214.3930    10736.6020      7853.3810   329724.4400     32912.5430
## 4     14588.9550    29128.1230     11057.5030      500.2725       500.2725
## 5      15264.835     15596.135       5999.206       500.000        500.000
## 6     18982.3100    71164.5800     17203.4160     1123.0288       500.0225
## 7     34991.2230    16922.4320      6678.3164     1115.3750      1093.7258
##   427.1967_4.894 448.1966_4.911 541.265_4.928 493.228_4.95 357.1009_4.96
## 2      3329.2760       500.0201   106122.6900    1161.5969    12913.0570
## 3      3412.5671       502.2117    86854.4900    2668.9990     9450.5720
## 4      2824.1270       500.2725   123232.4400    4901.6230    10193.0880
## 5       3092.959        500.000     50948.100     2959.201      5238.429
## 6      3632.7210       500.0225    84515.4200    4996.1560     4483.3457
## 7     10620.6570      1370.2866    37987.1170    2811.0500    11063.6400
##   433.2077_4.995 462.1766_4.998 407.0405_4.991 591.3184_5.021 294.149_5.025
## 2     50237.2770     20843.9650      1233.0165      4959.5977      500.0201
## 3     65668.1700     40955.9920      1171.7200      1760.4808      502.2117
## 4     23353.0270     42852.5200      1328.6544       500.2725      500.2725
## 5      39260.465      14111.677        500.000       5026.287       500.000
## 6     34034.7730     30898.1820      1194.6644      1887.0361      500.0225
## 7    136370.0200     26898.5410      1237.9250     10924.7770      502.2908
##   442.1246_5.012 199.0975_5.017 198.1135_5.021 436.1064_5.004 403.1019_5.042
## 2       500.0201     31569.9840     20392.4020       500.0201     17884.0210
## 3       502.2117     43998.1680     24181.2440       502.2117      1201.3427
## 4       500.2725     28701.6370     22313.4450       500.2725      1341.4708
## 5        500.000      23920.473      31832.006        500.000       1294.283
## 6       500.0225     45910.3700     35357.3240       500.0225     60392.4650
## 7      1045.8989     75289.9300     46829.7230       502.2908      7142.3745
##   374.1378_5.008 236.1018_5.033 354.1009_5.03 589.3024_5.037 253.0503_5.048
## 2       500.0201       500.0201    12059.9780      1183.0342     87628.7900
## 3       502.2117       502.2117    38183.9770       502.2117      9273.5380
## 4       500.2725       500.2725     9882.3050       500.2725       500.2725
## 5        500.000       1208.283      8366.475      11970.824        500.000
## 6       500.0225      1103.7936     7548.2890      5399.0730       500.0225
## 7       502.2908      1434.4534    49713.6950     12103.9480       502.2908
##   593.3333_5.048 539.1147_5.072 377.1019_5.09 255.0674_5.078 509.2751_5.084
## 2     20812.2970       500.0201     1027.2092     25627.5120     12026.2440
## 3       502.2117      1068.5839     1151.8346      2107.4490      8152.4160
## 4       500.2725      1030.7670      500.2725       500.2725     16909.2730
## 5        500.000       1290.289       500.000        500.000      11089.767
## 6      1264.2401      3301.1820     1162.5295      1099.6250      8110.6300
## 7      2037.0231      1504.2439     2033.6578      1006.4058     10047.3220
##   525.27_5.101 387.1658_5.117 544.2886_5.154 366.1015_5.18 221.1178_5.185
## 2   19517.9260     22937.2130      1040.8656     8198.0720       500.0201
## 3   14197.8360     20481.3480      1061.0623    72130.9840       502.2117
## 4   16485.2130     41533.5200       500.2725    19640.7030       500.2725
## 5     5771.371      22260.062        500.000     25038.250        500.000
## 6   12939.4610     23806.8960      1118.5981    19572.6780      1199.3672
## 7    7958.5080     53824.0230       502.2908    19473.2970       502.2908
##   177.1283_5.202 213.1132_5.201 511.2544_5.206 502.1148_5.219 352.0859_5.224
## 2       500.0201     24307.0880      5852.8706       500.0201    112688.7200
## 3       502.2117     33047.1500      3714.0657       502.2117    458347.8800
## 4       500.2725     34331.5860     11037.7140       500.2725    262000.7000
## 5        500.000      23485.188       4631.938        500.000     100043.336
## 6       500.0225     60858.3550      4175.9900       500.0225    208584.6600
## 7       502.2908     31735.4060      5967.0386       502.2908    182137.0500
##   218.0821_5.22 317.1602_5.227 385.1498_5.181 235.0957_5.223 492.1871_5.243
## 2     1588.3785      2098.5276      3198.5620      5796.4800       500.0201
## 3    17984.6000      1498.5624      2005.3846      6726.1680       502.2117
## 4     4179.0130      1280.7831      3541.4400      7509.8843      1018.1037
## 5      2000.520       1878.778       2268.223       5944.811        500.000
## 6     4259.6465     53313.6130     12095.8500     13241.8540       500.0225
## 7    21668.5370      3814.2888      4596.5900      6477.6914       502.2908
##   283.1657_5.239 481.2439_5.242 549.2312_5.243 493.1858_5.275 601.2255_5.243
## 2     15629.7070     96519.6900     17937.1540      1343.4958      1291.3202
## 3     14522.3880     46078.2800     11311.9210      1473.6250      1708.3146
## 4     18881.8340     92854.0200     17842.0530       500.2725      1841.1512
## 5       4988.767      46593.100      11252.220       1008.909        500.000
## 6     16454.7700     47444.9260      7793.1904      1020.0914      1166.7775
## 7      5726.3470     23718.9700      5081.6660      1117.0500      1741.1820
##   651.3856_5.28 537.1508_5.278 191.1105_5.283 223.0969_5.259 509.1453_5.277
## 2     2426.2744      1347.7834      2221.5210      3237.1140      1021.5819
## 3    22397.5740      1166.1658       502.2117      3351.8425      1093.4860
## 4     2509.8520       500.2725       500.2725      3574.7430      1220.8693
## 5     11791.816       1281.835        500.000       3418.265        500.000
## 6     5622.4517      1298.5032      2148.1370      5141.1630       500.0225
## 7     2543.0955      1387.5708      1963.0996      5629.7944      1069.8583
##   257.0801_5.284 73.0294_5.277 471.199_5.262 515.1648_5.296 355.0445_5.237
## 2      1097.2024      500.0201      500.0201      1029.4464      1697.0703
## 3       502.2117     1118.5565      502.2117      1324.2821      2313.2449
## 4       500.2725      500.2725      500.2725       500.2725      2196.7756
## 5        500.000       500.000       500.000        500.000       1403.233
## 6      1577.2256     1048.8716     1329.5245       500.0225      4114.3020
## 7      1487.7784      502.2908     1528.0974      1205.0000      1984.3488
##   191.1076_5.282 433.2076_5.283 223.0982_5.267 531.1311_5.287 536.3209_5.3
## 2      2221.5210     19980.6910      2078.3364       500.0201     500.0201
## 3       502.2117     22105.5230      3351.8425       502.2117     502.2117
## 4       500.2725     15200.3810      1130.0481      1148.1954     500.2725
## 5        500.000      13286.026       3203.035       1093.457      500.000
## 6      2148.1370     14589.4820      3403.3623      1173.9519     500.0225
## 7      1999.8200     27991.6300      4707.5635      1293.5547     502.2908
##   389.1814_5.311 442.19_5.313 325.1288_5.321 369.1737_5.331 344.143_5.362
## 2     12947.3470   13203.1370      2669.9553     15131.5930     3397.2060
## 3     11616.7240   23201.4790      6323.1840      5391.0400     9657.8980
## 4     15315.8430   11578.8180      5276.3696      9676.5610     4878.5250
## 5      10024.668    10516.662       3596.335       3973.209      2631.006
## 6     11237.2730    8790.4640      6082.9517     33698.8050     4509.8070
## 7     58495.2420    7053.8500     89544.2600      6309.5093    51613.2500
##   413.1993_5.357 329.1602_5.369 629.3537_5.37 343.1396_5.368 200.1291_5.38
## 2     20376.2520     24620.9180     4531.7870     14806.8750    19595.5040
## 3      6692.1074     11565.4180     4704.1494     46210.9600    46915.1100
## 4     16209.3120     13950.6860    14028.5840     20233.7400    28769.7640
## 5       6354.866      13071.861      3503.574      10672.633     22697.193
## 6     33519.0040     18615.5210     4097.5747     24811.5210    27645.8100
## 7      3962.4602     72749.5200     6564.5664    248378.9800   130450.0500
##   479.2283_5.383 229.0539_5.383 640.3334_5.395 662.3153_5.383 411.2021_5.398
## 2     58214.7270      2134.5254      1879.2208       500.0201     10346.4270
## 3     40937.7930    121871.5500     21882.2460      6553.6025     13203.2480
## 4     25046.6210     14170.3870     21452.8500      5815.1357     17267.0720
## 5      16035.868      57323.234       1315.734        500.000       9837.673
## 6     21580.6640     13520.7540      2236.6270       500.0225     14340.0320
## 7     11134.7250    105680.1200     42352.7150      9797.3790     32526.9820
##   553.1926_5.396 246.1531_5.399 407.2799_5.411 621.1797_5.389 543.2074_5.421
## 2       500.0201      8996.2290      1028.0500      1070.4548      1085.4550
## 3       502.2117     10460.2750     10389.7130       502.2117       502.2117
## 4       500.2725     20256.6970      1975.2726       500.2725      1076.1653
## 5        500.000       8449.521      14899.009        500.000        500.000
## 6      1102.4485     10757.1520      2966.6746      1057.1858      1269.5510
## 7       502.2908      5103.6797      1206.4402       502.2908      1047.4636
##   391.1968_5.431 463.0831_5.418 603.0611_5.431 467.1919_5.446 193.0353_5.465
## 2      2738.1912      1340.4934       500.0201     15354.9490      3243.8270
## 3      1827.1753      2845.3499       502.2117      5982.7725      3619.2812
## 4      2538.6736      2448.2473       500.2725      9843.9550      3813.4663
## 5       3200.716       1009.453        500.000      15191.840       1430.522
## 6      2528.2039      1852.4631       500.0225     11772.9580      3062.7540
## 7      4559.5090      3426.5671      1396.4355     12405.8830      5620.2670
##   405.1707_5.449 407.129_5.446 474.1054_5.422 535.0762_5.453 528.2617_5.454
## 2       500.0201      500.0201       500.0201       500.0201      4031.6567
## 3       502.2117      502.2117       502.2117       502.2117      2044.1810
## 4      1529.2470     1062.6777       500.2725       500.2725      3067.1716
## 5        500.000       500.000        500.000        500.000       1983.262
## 6      1054.0139     1142.9274       500.0225       500.0225      2681.4048
## 7      1537.0580     1222.5721      1744.0751       502.2908      2752.0050
##   405.118_5.456 421.0582_5.463 319.1396_5.493 305.1604_5.512 367.2123_5.512
## 2     1697.5070      2708.6428     40740.5300      7284.7780      1740.8025
## 3     1438.7695      1310.8369     35223.1100      3532.3486      1125.6466
## 4     1958.4794       500.2725     36789.4650     11569.7450      3451.5405
## 5      1247.273       1365.815       3131.644       5746.319       1330.111
## 6     1524.5052     54073.2600     12863.1970     27119.1170      9470.6220
## 7     1623.6658      1613.3344     28748.2970     34464.7100      5390.8350
##   526.2476_5.551 379.1955_5.602 435.2232_5.611 416.1536_5.683 461.1337_5.706
## 2     18850.8160       500.0201     19744.7190       500.0201      3057.5410
## 3      5487.0000       502.2117     38704.1760      2210.1304      6795.5420
## 4     15333.2500      1054.3843     18302.2050      2178.9585      8785.1960
## 5       4479.613       1295.213      12186.927       3820.612      10571.638
## 6      7234.5356      1333.6758     13620.8870      2163.3333      8601.2820
## 7     24299.5180     80812.1100     53611.0500      2933.4980      7262.4710
##   481.2073_5.68 491.1861_5.71 501.2122_5.698 583.3118_5.69 486.1199_5.689
## 2    25390.5880     1320.0769       500.0201     3827.3604       500.0201
## 3    11387.3350     6180.4980     20087.5780    10774.9480       502.2117
## 4    15662.7650     1049.0277      1673.5681     7042.0723       500.2725
## 5     10571.452       500.000       1145.778      6175.060        500.000
## 6     6319.4450      500.0225      1123.5095    15891.9900       500.0225
## 7    16433.9980     1133.5822      1158.9225     2899.5942       502.2908
##   477.2332_5.701 500.282_5.708 445.1587_5.793 529.121_5.76 594.3642_5.768
## 2      2181.8384      500.0201      3087.3535    1793.9824      6973.2485
## 3      1590.8765      502.2117      2069.0005    6140.8364     70584.6400
## 4      1166.6010      500.2725      2656.8408    6818.5737     12761.5180
## 5       1461.699     39633.395       2540.361     7222.016      25257.908
## 6      2061.0908      500.0225      2481.2893    5701.0360      6704.6210
## 7     16236.4000      502.2908      3431.7617    6164.1626      5536.9473
##   331.2144_5.765 448.1961_5.778 467.1506_5.777 747.3107_5.769 753.328_5.771
## 2      1633.9688       500.0201      2048.3564       500.0201      500.0201
## 3      2371.1074       502.2117      6777.2580      1497.0440      502.2117
## 4      7880.2140       500.2725     10671.2060      1494.2919     1102.9610
## 5       6886.719        500.000      12089.307        500.000      1087.015
## 6      5070.4756      1175.8634     10565.5860       500.0225      500.0225
## 7      6276.5140       502.2908      7449.4600       502.2908      502.2908
##   461.1338_5.769 685.341_5.775 331.1763_5.775 451.125_5.775 399.1634_5.776
## 2      3057.5410      500.0201     31980.7090     3377.0320      5757.4730
## 3      8331.2960     2162.3804    144166.0000     9500.9770     26219.3340
## 4     12213.9810     4053.9753    216570.2800    14970.2290     35131.5100
## 5      11611.581      4324.617     205911.580     15217.675      38359.668
## 6      9252.2280     2833.4746    164455.4700    11973.7050     28834.2560
## 7     10928.1380     2208.0051    185423.0500    11140.2470     28858.0640
##   387.1489_5.77 663.3572_5.772 367.1578_5.796 429.1762_5.798 407.2799_5.805
## 2      500.0201      1118.3784     88616.8050     16817.8890      1725.4916
## 3      502.2117      5551.0910     34362.1950     11833.7160      8467.0000
## 4      500.2725      2482.7812     33942.8240      6238.9644      2241.1953
## 5       500.000       4029.835      10800.803       7995.852      13887.737
## 6      500.0225      2061.7334    186158.0300      4617.9673     10292.0090
## 7      502.2908      2043.8568     27513.7600     18331.1110      1285.9371
##   222.1134_5.811 509.2752_5.821 437.0526_5.832 511.2181_5.843 461.2388_5.842
## 2     20131.9120     12520.9795      7512.7690      6566.1370     11973.6840
## 3     32680.5330      3916.2463      1170.5023     12403.6030     13561.2040
## 4     43111.1950      7785.1226       500.2725      6135.0293     14784.5190
## 5      25701.314      10226.408       2552.115       3394.999       9140.549
## 6     28337.3260     13470.8970      9565.3670      5085.6400     12646.8890
## 7     46498.8360      7646.6860      1519.2506      7645.7837     23317.4900
##   495.2232_5.846 529.162_5.829 345.1553_5.874 467.2645_5.878 497.2751_5.86
## 2     30918.5350      500.0201     23340.3610     23616.4400     2610.3608
## 3      6232.9697     1601.7107     25768.8930      3164.6057     1742.8497
## 4      5922.3140      500.2725     35932.0270      6060.4580     2179.1472
## 5       5351.081       500.000      16837.640      11580.010      1959.350
## 6      2931.7292     1127.5375     23477.2420     12453.0600     4171.2944
## 7     28736.4400     1354.7705     37412.6950      3336.3300     4375.2285
##   613.3589_5.89 379.1393_5.891 463.2334_5.897 475.2184_5.932 565.3012_5.907
## 2    26207.8670      1218.0563     18118.6930      2698.4640     13901.0720
## 3    22226.7520      1165.9767      6107.7056      1337.6556     10938.4000
## 4    57371.4200       500.2725      8941.6560      2093.8506     19063.0720
## 5     19845.783       1433.155      12609.671        500.000       7021.513
## 6    17457.3570      1558.3872     20039.7460      1790.8436      5426.2110
## 7    57183.9770      1505.9944      7462.6730     10889.0030      5859.9060
##   583.3118_5.932 491.228_5.918 567.3168_5.938 528.2633_5.962 550.2453_5.959
## 2      3671.7795     3077.4897     17762.6370     38637.6330     10067.3880
## 3     14698.7050     1077.9639      7784.8010     28933.8360     10546.3580
## 4      5976.6724     1191.0087     13694.3000     50107.0700     12697.3600
## 5       1829.164      1246.042       7636.197      36839.250       8387.270
## 6      9048.5360     3320.2893      6765.6530     31670.9980      7620.1510
## 7      9995.9390     2861.8708      4236.4030     94076.7400     24963.3200
##   509.2379_5.991 443.1557_5.98 465.1373_5.985 446.2908_6.024 369.1552_5.993
## 2      3319.1165    92757.7800     23771.9260      1971.5884      8651.6170
## 3      2286.9940    66802.6700     17166.8770     10073.2000      5791.5340
## 4      3478.7979    33966.9180     10277.8600      7636.6333     10599.6230
## 5       1776.782     45578.850      13733.121       2564.062       8412.393
## 6      3516.8462    39452.7030     11983.0280      3319.9001      9297.9870
## 7      6879.7120   102725.4100     24294.4180     11342.1480     18756.1620
##   345.1552_6.009 579.2778_6.011 511.2909_6.014 512.1916_6.018 624.3385_6.01
## 2     29148.0840     18536.4200     99607.2600       500.0201     9868.4960
## 3     29983.0350      8165.4570     40257.8300       502.2117     5978.2240
## 4     38178.9180      8655.9140     43796.2340       500.2725    24226.7070
## 5      15681.922      13243.390      63861.293        500.000      6894.057
## 6     28462.5490      5080.3413     30582.4180       500.0225     4857.5557
## 7     23003.6020      6157.9990     24339.0020       502.2908    24894.4260
##   476.1913_6.018 417.2126_6.021 544.1789_6.025 496.198_6.048 257.0816_6.056
## 2       500.0201     19204.3420       500.0201      500.0201     12280.1540
## 3       502.2117     17715.6110       502.2117      502.2117     10617.8750
## 4       500.2725     22952.4770       500.2725      500.2725       500.2725
## 5        500.000      10533.724        500.000       500.000        500.000
## 6       500.0225     18213.1100       500.0225      500.0225       500.0225
## 7       502.2908     35303.6330       502.2908      502.2908       502.2908
##   369.1737_6.099 437.1608_6.099 566.3329_6.114 446.2907_6.081 533.2364_6.145
## 2     66615.3100      9016.8660      2603.6562      1971.5884     55716.5230
## 3     41354.3480      6038.2690      2093.7744      8095.7150     15094.4330
## 4     45262.4180      7218.6750      6567.7550     10381.0205     36507.9140
## 5      35725.320       5862.789       2332.630       2564.062      39470.746
## 6    130593.6250     17558.7170      1887.0822      1796.1227     43421.9900
## 7     58683.8870      9514.2690      5535.0146      5062.5370     19414.7320
##   465.2493_6.146 869.3936_6.15 601.2235_6.147 585.1981_6.148 523.2077_6.148
## 2    300830.6600      500.0201     17970.0270     18568.0120     16883.5370
## 3     78652.2700      502.2117      5087.2820      5776.0093      4331.2820
## 4    186971.8800      500.2725     11645.3400     10978.6940     10122.1120
## 5     202456.440       500.000      12246.770      14130.377      12557.078
## 6    231344.1100      500.0225     12881.9290     13683.7150     12175.3000
## 7    116360.9000      502.2908      7134.1900      7617.4150      6948.3306
##   510.2524_6.169 254.6229_6.168 627.3743_6.176 457.2207_6.206 521.239_6.221
## 2     20275.6700      4623.0977      6618.1353       500.0201     1046.2118
## 3     17112.4940      3222.2466      4524.0728       502.2117      502.2117
## 4     44985.6760      7927.3920      7483.6665      1003.8928     1277.0312
## 5      16190.145       3123.695       4299.785        500.000       500.000
## 6     16388.1540      2694.7131     14348.0770      1160.4958     1013.5504
## 7     19043.1820      2504.4514     12548.5650      1079.9790     1331.9034
##   393.2643_6.229 517.1295_6.231 579.0995_6.236 381.1551_6.237 193.0354_6.242
## 2      7018.8040       500.0201       500.0201      2396.8450      1207.0001
## 3      5735.1610       502.2117       502.2117      1200.4326      1142.7527
## 4     12394.6400       500.2725       500.2725      1279.8898       500.2725
## 5       3846.231        500.000        500.000       1057.665        500.000
## 6      9533.6540       500.0225       500.0225      3174.2563      1533.3323
## 7      9603.9080      1268.0364       502.2908      4781.7800      1299.9011
##   381.1937_6.247 439.1146_6.219 501.1047_6.238 449.142_6.234 511.1128_6.237
## 2      1244.7769       500.0201       500.0201     1281.9812       500.0201
## 3      1381.1210       502.2117       502.2117     1067.3020       502.2117
## 4      1012.2658      1008.9587       500.2725      500.2725       500.2725
## 5       1185.178        500.000        500.000       500.000        500.000
## 6      1746.7676      1056.6683       500.0225     1131.5266      1022.5649
## 7      1270.5898      1045.2396      1060.7882     1961.8164       502.2908
##   405.2644_6.291 573.2395_6.305 471.2417_6.297 307.1184_6.294 509.2751_6.332
## 2      1387.9204       500.0201     18684.4730      6102.5850     21149.9590
## 3      3724.9272      1008.0635     18294.3600      1373.2618      4311.4510
## 4      1505.1262       500.2725     23933.8360      1323.8584     11959.6020
## 5       2287.129       1017.574       7752.073       2922.535      20269.045
## 6     11140.8090       500.0225      6665.7790     24614.3240     11147.6880
## 7      2388.3218      5741.0110     35014.1400     20257.7600      3102.0410
##   441.2108_6.348 419.2281_6.362 324.0682_6.363 280.0779_6.362 489.27_6.391
## 2      4303.2110     11611.4080       500.0201       500.0201   19273.8750
## 3      3087.0044      7739.5160       502.2117       502.2117   15949.5800
## 4      3277.2034     13111.4810       500.2725       500.2725    8301.6480
## 5       2454.044       8878.062        500.000        500.000     8016.592
## 6      2949.6184      4228.3320       500.0225       500.0225   12656.2660
## 7      5087.9450     14919.4230      1066.9482       502.2908   30728.7660
##   448.3058_6.47 495.296_6.494 623.2016_6.501 613.1932_6.507 551.2033_6.504
## 2    17199.8050    27995.4380      1837.4498      1894.7000      1654.2815
## 3     7255.5576     8289.5670      1504.4625      1087.0563      1042.4944
## 4    13846.4050    19739.8570       500.2725       500.2725       500.2725
## 5     12527.042     18634.680        500.000        500.000        500.000
## 6    18120.8960    12107.6045      1008.3889       500.0225       500.0225
## 7     3281.5308    18387.5060      1411.7673      1726.5679      1590.9014
##   629.2176_6.511 591.2109_6.51 493.2439_6.516 561.231_6.512 691.188_6.507
## 2      2108.0002     1857.5790     18997.6820     4671.8643     1491.9589
## 3      1077.4749     1005.4697      9637.5660     2719.0767     1057.6036
## 4       500.2725      500.2725      1452.6182      500.2725      500.2725
## 5        500.000       500.000       2134.265       500.000      1014.569
## 6      1305.1003     1174.1191      4077.1365     1140.4529      500.0225
## 7      1675.7294     1469.7109     12909.8480     2969.5227     1273.0312
##   493.2869_6.516 513.2714_6.619 489.27_6.555 514.2774_6.559 446.2909_6.562
## 2      1569.7882     12710.6820   22514.0470     16738.1210     70527.0900
## 3      1346.8307      5424.4270   11159.2440      5405.3520     23826.0550
## 4      1046.6996      4672.1820    8618.8390      6591.5410     28002.0590
## 5        500.000       3951.774    10743.843       3153.488      10707.768
## 6       500.0225      7240.8696    9633.0790      7264.9170     24641.2770
## 7      1055.0084     13957.7940   22765.8870     11843.5540     46801.4600
##   534.2499_6.614 512.2682_6.624 567.317_6.697 491.2855_6.773 407.2801_6.791
## 2      9309.4710     39989.2150     3238.9160      4670.7725      2874.2740
## 3      3499.2440     12448.2730     9105.0490      8206.8880      1008.4620
## 4      4768.9470     16551.2170    11183.8330      4406.3440      4265.1880
## 5       2497.870      10731.489      2711.477       3076.349       1270.337
## 6      5315.4844     19152.4120     3992.4788      2627.6377     44685.7100
## 7      8661.4000     39859.5040    12001.4920     11399.5260      1092.4450
##   507.2231_6.98 505.2452_7.002 267.1235_7.063 437.18_7.078 573.2393_7.26
## 2     4173.1970       500.0201     34378.4140    1187.5945      500.0201
## 3    25650.5760       502.2117     23522.3050    1160.8503      502.2117
## 4    22368.4530      1112.6277      9432.8070     500.2725      500.2725
## 5     32762.258        500.000      87857.734      500.000      1037.959
## 6    24798.7380       500.0225     58489.6200    6081.6685      500.0225
## 7    19402.6580       502.2908     53023.7800    1701.7600     3339.9758
##   673.2558_7.365 519.223_7.484 557.2465_7.479 517.2413_8.045 449.254_8.044
## 2       500.0201     1176.9064      1107.4280     20837.4790   116360.6000
## 3       502.2117      502.2117      1055.2023      1358.1008     6277.5054
## 4       500.2725     1026.7890       500.2725     12336.5550    62160.6500
## 5        500.000      1087.832        500.000      14514.675     76166.440
## 6       500.0225     1020.6257       500.0225     20214.2680   113360.1300
## 7      5379.2450      502.2908      2644.6428      1239.2578     3941.5579
# change to results to numeric
data_notame <- data_notame %>%
  mutate_at(-1, as.numeric)

head(data_notame)
##               mz_rt 236.065_0.603 168.0777_0.606 154.0621_0.609 124.0072_0.616
## 2 6111_U4_C18NEG_42      4148.156       6707.072      304457.60       63058.53
## 3 6101_U2_C18NEG_30     65118.800      81841.780      112404.43       22063.85
## 4 6102_U1_C18NEG_26     16741.850      29358.371      168966.02       56236.64
## 5 6110_U2_C18NEG_34     16350.678      19073.940       67706.22       22557.04
## 6 6105_U4_C18NEG_47     46170.508      59856.336      208992.60       56521.90
## 7 6103_U4_C18NEG_53     62220.047      90745.414       92892.30        4167.15
##   193.0351_0.617 239.1144_0.622 275.056_0.654 195.051_0.627 215.0326_0.629
## 2      110661.23       4148.840      7621.462     175922.42       83845.84
## 3       50736.00      13944.503     10538.454     222889.05      112802.20
## 4       54822.62      13815.239     14388.471     185187.05       93607.89
## 5       27333.80       2379.748     12803.501      97982.84       72868.77
## 6       51904.73      13813.590     54594.406     119151.62       87575.54
## 7       81048.39       7217.615     11000.114     109782.73       56883.41
##   219.0457_0.629 217.0486_0.63 245.0433_0.63 165.0405_0.634 187.0383_0.634
## 2       14710.47      42995.40     22739.150       84372.05       17612.54
## 3       21731.16      67756.38     13593.999      129945.73       16133.58
## 4       16508.49      46851.04     11583.424       62910.26       16036.78
## 5       29380.19      84598.01      9735.333       99338.50       14608.52
## 6       18316.07      49151.78     15733.052       81935.97       21083.07
## 7       25524.66      80661.06     13465.152       79159.32       22429.19
##   265.0732_0.64 235.057_0.641 135.0295_0.64 277.0852_0.658 179.0556_0.643
## 2      3554.009     10549.707      215612.5       1896.890       49858.58
## 3      2770.605      7714.571      161603.8       1777.623       69490.11
## 4      3590.480     13949.080      180550.1       1650.315       54854.73
## 5      2833.232      2971.846      118229.0       1515.141       79040.13
## 6      2556.381      5410.374      180194.7       1872.541       66115.34
## 7      1964.567      4466.612      110849.0       1644.784       34922.00
##   149.0089_0.649 547.1106_0.67 149.0452_0.654 262.0364_0.654 321.0625_0.656
## 2      59227.816      1480.111       53766.40       24966.15      10882.572
## 3      94413.370      1979.919       55440.19       16337.39      25443.610
## 4       8282.051      2248.388       50711.70       22093.76      18592.223
## 5      14616.016      1228.672       64062.99       35391.87       8272.857
## 6       3099.258      1445.831       53487.29       18773.77      11248.721
## 7       8325.330      1888.409       32421.29       79602.77       6367.673
##   174.0405_0.655 291.0683_0.654 167.0208_0.657 261.039_0.66 494.1144_0.666
## 2       21986.17       3920.858       391255.3     21221.85       1378.356
## 3       22722.28       3144.512       352507.2     33641.87       1788.408
## 4       22790.85       2798.266       404390.7     20416.87       1299.250
## 5       16850.51       4256.903       614587.0     31758.99       2543.849
## 6       39613.52       3506.388       847425.0     20707.12     111281.990
## 7       16621.40       3902.843       378931.6     55393.78       1669.535
##   308.0983_0.658 247.062_0.659 151.0066_0.66 363.0756_0.658 277.052_0.659
## 2       17307.66     25386.652      8439.765       11992.52      8896.553
## 3       15982.89     19120.885     11509.525       37390.39      5537.230
## 4       21815.36     39358.438     12856.635       36373.70      8356.729
## 5       11636.19     16349.409     18192.979       21776.12     12400.021
## 6       15389.84     27319.941     10566.316       19312.00      7137.539
## 7       10550.26      6860.665     17224.197       12659.90      7859.851
##   262.0286_0.664 287.0195_0.66 290.0877_0.662 287.0526_0.66 263.0573_0.662
## 2       21046.44     14930.026       8933.062      7753.760      15739.020
## 3       33996.13      7956.347       4929.507      7766.633      17729.266
## 4       27414.63      9422.424       8266.643      8011.123      17002.371
## 5       33476.04     14959.646       6859.244      5627.218      11740.802
## 6       22452.06     10694.958       9186.924      6865.495      17202.941
## 7       27361.56     14248.406       4465.655      5874.456       6983.899
##   253.9903_0.661 188.0021_0.665 337.0436_0.684 300.039_0.661 461.0646_0.667
## 2      11407.440       18472.05       500.0201      22658.52       1432.187
## 3       7760.920       56319.30      4015.7778      24527.46       3294.442
## 4      11899.625       12348.45      4727.2830      27361.35       2893.552
## 5       8558.486       17131.70      3151.2400      12541.50       1607.297
## 6       9068.235       20309.28      2994.2952      32732.29      25902.227
## 7      11395.034       10298.02      3248.6460      13565.71       1928.012
##   463.0657_0.669 295.0277_0.684 379.0686_0.661 491.0719_0.671 247.9959_0.702
## 2       1728.165       3877.864       19467.22       1976.401       9789.628
## 3       3113.431       3143.347      126441.66       1952.864      26527.518
## 4       2402.470       4319.640       77050.38       1530.923       9697.385
## 5       1732.253       2029.218       27472.50       1314.838      11553.704
## 6       3606.900       3085.359       23418.00       2655.319       7443.909
## 7       2762.229       2343.916       23161.10       1687.461       6933.913
##   243.0617_0.662 351.0566_0.663 373.0567_0.663 557.1344_0.671 351.0199_0.667
## 2       30853.54       32206.31       7283.209       1498.143       3787.962
## 3       23710.47       19565.97      11812.051       1949.107      15992.729
## 4       34791.48       32150.52      10058.436       1646.734      18490.943
## 5       29982.63       14812.69       3590.756       1011.158       6557.495
## 6       31734.12       32706.41       5388.302       5968.790       4365.383
## 7       22360.31       14061.23       4312.708       1533.398       9119.174
##   323.0417_0.656 396.025_0.663 293.0301_0.685 254.9816_0.664 389.0688_0.663
## 2       4656.880      36380.03       4546.778       72849.41      10816.223
## 3       5719.677      32557.80       7261.963       78899.58      26806.127
## 4       2628.112      22872.48       6610.026      112633.54      24806.818
## 5       3849.919       9591.22       2736.389       38314.09       8937.354
## 6       6543.930      21491.27      34597.047       60320.02      12854.002
## 7       2698.003      14241.13      11340.430       33674.39       5623.102
##   328.0474_0.665 275.0569_0.663 445.0903_0.667 289.0702_0.663 293.0676_0.65
## 2       7255.310       11471.70       8148.391       9563.983     10029.273
## 3       6964.973       10538.45      18728.790       6446.380     14552.439
## 4       7752.760       14388.47      18968.030       9187.526     10567.366
## 5       4605.590       12803.50       4771.278       8563.401     10739.345
## 6       6006.595       54594.41      10714.825       7585.174     12973.740
## 7       4763.804       11000.11       7042.906       4399.026      8009.932
##   541.1207_0.663 227.9967_0.668 395.0628_0.675 405.0648_0.668 398.0412_0.681
## 2       3575.813       72074.09       12726.30       6694.696       2889.994
## 3      10819.161       72658.74       53118.33      34385.707       2812.615
## 4       8255.391       45834.60       31870.00      23018.111       3777.036
## 5       2170.591       19956.22       15352.70       8227.380       8131.128
## 6       5221.691       34732.79       15376.13      10411.945     268753.470
## 7      15615.923       26029.39       23932.92       7877.498       4579.863
##   231.0308_0.666 289.0528_0.664 375.054_0.665 225.0623_0.658 360.0729_0.672
## 2       12636.01       9199.498      8978.262       3959.293       9899.389
## 3       24950.57       6697.975     29421.720       7518.006      31006.035
## 4       23874.47       7208.151     20557.312      23502.887      24456.684
## 5       11439.28       7413.016      9835.665       2361.148       8538.419
## 6       18868.81       7997.809      9912.558      17117.385      16410.525
## 7       13173.44       4967.005      6042.798       8349.902       6997.918
##   216.0196_0.667 261.0232_0.668 260.0254_0.667 347.059_0.674 307.0116_0.682
## 2       58641.75       173269.6       117672.6      10468.38       1521.851
## 3      178319.86       340208.4       203477.6      30192.11       2271.590
## 4      157426.64       316508.0       211304.9      22496.08       2083.192
## 5       69920.41       273429.5       165951.3      23684.22       2951.281
## 6       80708.16       229276.5       170327.8      30482.32       5467.719
## 7      124550.24       317140.1       192901.4      22400.62       6189.201
##   356.031_0.667 129.0191_0.669 331.0274_0.668 85.0291_0.668 345.0438_0.668
## 2      6124.045       236005.1       21954.35      84031.93       37873.72
## 3     18968.357       329562.7       19095.89     110775.65       72203.16
## 4      4514.106       312758.8       18446.11     116002.26      108276.02
## 5      6339.006       229952.8       24770.73      83288.96       26113.56
## 6      4446.531       295936.3       12468.62     108941.45       40104.81
## 7      7339.775       297184.9       40800.06      91490.17       15130.20
##   336.0493_0.662 217.0162_0.671 349.059_0.669 371.0241_0.671 359.0566_0.67
## 2       21169.90       254774.4      26902.29       3997.847     11019.816
## 3       20621.57       666478.4      74113.73      10361.553     15147.177
## 4       20894.64       575733.5      41118.16       9828.128     17454.236
## 5       41425.48       245340.3      27493.34       2132.876      8432.428
## 6       50127.76       298069.7      27595.81       2971.794     11856.248
## 7       21760.66       460064.9      19456.70       5593.301      9593.075
##   475.0782_0.667 432.2024_0.669 246.0075_0.694 304.0334_0.669 305.0302_0.67
## 2       2270.458       500.0201       3329.670       104681.8      147793.8
## 3       4959.023       502.2117       3286.561       137143.0      184741.4
## 4       4681.269       500.2725       2274.452       153807.9      189132.4
## 5       2710.678       500.0000       5420.414       136424.4      180358.3
## 6       2697.789      2117.2908     131341.420       107177.9      153268.8
## 7       3094.526       502.2908       2874.550       163900.8      203005.8
##   431.0534_0.666 274.0026_0.671 230.0493_0.666 550.1307_0.664 173.0089_0.672
## 2       5363.149       7800.160       2385.206       1647.118       387825.8
## 3      11396.476      56630.137       2519.885       2237.812       498700.2
## 4       8234.119       6476.700       2632.771       2314.856       448936.1
## 5       4677.412      16356.477       2170.819       1977.353       354741.7
## 6      10177.327       8834.401      24179.092       1834.480       437558.3
## 7       5358.130      28521.215       2795.769       1410.586       458486.2
##   526.0995_0.675 232.005_0.705 330.0291_0.673 410.0417_0.684 301.0547_0.665
## 2       1524.602      4428.511       21943.51      23547.430       4664.002
## 3       1872.984      6473.889       19465.50      12721.896       3882.189
## 4       1563.827      4951.872       17778.10       2655.240       4994.150
## 5       2444.157      3688.011       33552.07       2591.827       3447.831
## 6     141841.330     48300.520       17316.74       5945.292      29855.465
## 7       1605.157      2360.280       46560.23       5217.218      17143.390
##   274.0396_0.676 691.1349_0.67 247.9921_0.704 318.064_0.674 315.0338_0.673
## 2       12929.94     1078.6835       9789.628      7785.817       8878.005
## 3       12111.82      502.2117      26527.518     10388.058      18749.488
## 4       11576.77     1015.5614       9697.385     10731.376      22687.920
## 5       12632.41     1233.0360      11697.337      8062.857      13496.725
## 6       13121.78     2851.9258       4977.282      7053.570      11470.785
## 7       10873.22     1045.9828       7218.643      5680.635      12024.852
##   320.0597_0.683 277.0349_0.667 338.1134_0.651 462.0712_0.669 262.9863_0.693
## 2       28297.39       4416.891       1313.618       1579.116       2423.988
## 3       30200.49       9214.732       1212.621       3230.344       3717.879
## 4       21522.02       4337.562       1055.631       2531.174       2146.259
## 5       12583.48       4946.517       1185.092       1835.917       3136.109
## 6       15244.03       5060.556       1195.891       6311.497       4296.731
## 7       13343.08       3963.088       1609.490       1764.891       1933.574
##   264.9884_0.68 399.0203_0.683 344.0448_0.677 303.0365_0.684 365.0528_0.68
## 2     113964.42       6803.435       24700.07       28172.19      9602.565
## 3     112022.44      33700.070       50612.17       37815.97     33895.285
## 4     131204.67      27662.969       58156.92       56812.63     11426.093
## 5      57290.05      19677.950       17857.01       38021.71     20620.957
## 6     154751.20      12679.599       29855.48       48059.88     13932.004
## 7      95716.98      37637.440       17081.19       42261.23     10952.647
##   307.0326_0.669 246.0433_0.669 275.0216_0.69 288.0231_0.685 278.0698_0.683
## 2       7651.126       6301.940      21675.70       2171.035      11119.688
## 3      12801.028       4495.199      48333.08       2594.452      12375.687
## 4       9367.340       5753.604      46051.78       3280.475       9924.608
## 5      10809.471       6208.385      27149.67       7146.336      12335.614
## 6       6298.244       9574.203      52112.79       2866.753       8318.396
## 7      13549.310       6263.126      27632.22       6015.031      10469.758
##   218.9961_0.686 288.0398_0.684 417.0297_0.684 191.0212_0.699 509.0384_0.699
## 2       29057.56       5254.134       36776.48        4271292      9943.6940
## 3       26525.75      14368.870       74917.35        5971350     14769.3430
## 4       17512.94      12189.894       71361.46        5661172       500.2725
## 5       69096.27       6233.876       46809.65        5800687      1152.2520
## 6       49340.29      11836.968       45453.77        6219833       500.0225
## 7       45610.52       8530.920       80406.51        5948256      1457.8425
##   265.0186_0.67 289.0363_0.688 300.0195_0.687 661.1248_0.679 436.092_0.669
## 2      5677.824       21162.40        6127.32       500.0201      1625.533
## 3      5042.470       38123.38       16401.19      1504.8782      2302.190
## 4      5974.380       38736.93       17186.10       500.2725      2267.769
## 5      9163.784       25467.67       14968.06       500.0000       500.000
## 6     10135.686       32850.72       10955.58      1238.6486      1547.042
## 7      9497.146       29641.80       29918.47      1207.5732      6623.473
##   480.0818_0.682 419.1179_0.71 361.0578_0.686 242.0115_0.695 385.0951_0.677
## 2       1683.972      4461.071       22139.16      76768.000       1877.189
## 3       2538.070      5500.953       37330.00      36109.594       1451.558
## 4       2445.187      3409.887       37392.11       3506.001       1697.665
## 5       1214.369      2178.181       13581.20       4123.630       1439.647
## 6       3476.852      5135.953       37359.74       6403.408       1721.645
## 7       1833.886      4428.649       22033.45       4559.387       1516.486
##   487.0783_0.683 145.0141_0.693 631.1154_0.686 302.0532_0.694 439.056_0.753
## 2       2089.931       32694.46      1107.0416       19273.21      3057.648
## 3       3229.205       27103.39       502.2117       17813.26      2580.377
## 4       1752.802       39290.84      1138.2074       25512.56      1636.482
## 5       1377.679       18083.13       500.0000       11645.04      1544.656
## 6       4552.856       29402.82      1328.6703       18164.51      2300.604
## 7       2126.688       48293.88      1027.8997       12906.65      3150.193
##   418.1123_0.717 377.0526_0.697 296.9824_0.699 218.0492_0.684 332.0663_0.696
## 2       9240.758       16165.51       172357.0       6156.410       14352.75
## 3      27600.758       22953.60       261831.1      86759.540       11513.19
## 4       8733.800       17618.71       260996.6       9987.960       14640.16
## 5      10812.652       18719.19       141970.6      20545.275       13763.93
## 6      20853.950       24687.98       211734.0       9220.207       11579.38
## 7       9241.500       10513.12       254820.1      32551.074       10625.55
##   133.0504_0.696 405.0469_0.697 349.0207_0.696 295.9856_0.697 527.1244_0.676
## 2       58184.89       12246.46       9556.484       44239.14       1520.082
## 3       19859.45       20985.31      21081.809       68629.15       1453.922
## 4       26414.59       20242.28       2572.469       71051.29       1478.560
## 5       39528.96       22405.70       2777.294       36044.31       3086.462
## 6       27557.38       21118.88       6357.444       65073.44       6357.520
## 7       40625.38       17682.35       1964.025       64934.23       1952.469
##   333.0634_0.694 392.0363_0.698 570.0904_0.696 394.06_0.685 144.03_0.697
## 2       50376.02       79644.32       1192.527     5016.383     20549.54
## 3       37198.00      211934.05       1945.405    17367.436     12359.06
## 4       45505.54      195954.06       1329.654    10407.042     17822.94
## 5       36155.80      111624.73       1486.894    11816.269     14422.31
## 6       44392.86      216734.20       1282.268     6937.322     18463.63
## 7       27413.29      155174.64       4704.697    47895.934     12584.45
##   391.0332_0.698 296.0197_0.697 191.0523_0.699 319.0474_0.696 347.0424_0.697
## 2       493382.8       2065.585       128032.3      228269.97       21344.03
## 3      1598408.4       1706.899       127600.2      207429.16       76096.59
## 4      1336129.4       2461.055       114005.6      330992.10       35181.47
## 5       737906.1       1892.521       113870.6      140869.95       32082.86
## 6      1615176.4       1539.014       104292.6      204233.78       27753.13
## 7       654401.1       2343.535       148865.5       66676.64       25022.49
##   316.0285_0.688 191.0203_0.697 192.0224_0.702 320.05_0.698 397.0582_0.701
## 2       2335.339        4271292       244912.1     32589.74       17310.68
## 3      17480.080        5971350       425455.5     30232.38       23589.91
## 4       2175.916        5661172       382120.7     42970.62       27858.78
## 5       3997.198        5800687       510942.7     19847.18       12179.88
## 6       2973.057        6219833       455817.3     31299.69       20153.56
## 7       5113.091        5006305       402905.9     11344.95       14181.07
##   277.0021_0.707 206.9961_0.7 78.9585_0.702 468.0451_0.696 389.0528_0.7
## 2       5372.949     52142.77      211444.4       1784.077     26811.81
## 3      10250.444    135124.94      170654.6       3806.712     41203.88
## 4       3510.574     62368.05      219096.5       1811.375     37091.09
## 5       2991.485     68935.34      103807.1       5802.637     14793.73
## 6      12172.925     78885.26      189029.5       3278.921     24250.27
## 7       4614.704     83022.69      134074.3      11802.083     21201.19
##   246.9913_0.705 161.988_0.685 154.9984_0.703 246.9916_0.705 111.0085_0.703
## 2       81910.30      500.0201       29219.25       81910.30       406520.8
## 3      229988.02   367110.0000       25145.98      229988.02       661080.1
## 4       73131.02     1071.1361       22682.88       73131.02       603447.8
## 5       85781.72     9216.2580       15626.09       85781.72       626823.2
## 6       32668.59     3869.4077       21313.97       32668.59       730377.2
## 7       41336.69      502.2908       15210.55       41336.69       634365.5
##   216.981_0.709 524.0845_0.705 427.0674_0.685 379.0336_0.708 367.0282_0.707
## 2      60342.52       6745.012       2228.570       15370.52       23634.73
## 3     105255.52       6333.323       2495.810       43376.43       15567.30
## 4      42331.01       5804.370       2213.417       19405.04       15214.25
## 5      48391.12       1876.439       2423.096       12354.70       18005.93
## 6     127584.33       6225.265       4249.378       14402.41       17370.80
## 7     101494.09      17141.700       3508.205       23399.62        7441.63
##   543.0792_0.704 303.0532_0.705 225.0424_0.708 232.9759_0.708 423.0571_0.703
## 2       9441.306       33108.57       1438.579       33282.68       6167.018
## 3       3902.865       45647.30       1193.774       69228.01      44044.965
## 4       6051.264       66692.70       3760.603       18993.38      12221.240
## 5       3249.885       41528.29       1397.930       41496.67       8118.665
## 6       2081.135       45342.85       1462.196       23995.37      45888.895
## 7       7330.236       37758.77       3271.262       36132.21      18807.643
##   347.079_0.706 146.0456_0.708 335.0468_0.663 409.0428_0.71 559.1102_0.68
## 2      28352.67       43757.48       41948.97      5476.098      2089.940
## 3      33714.11       40495.89      150743.64     29388.186      2526.582
## 4      31311.31       32793.04      156294.39      6958.390      3685.181
## 5      29898.60       29624.33      300009.06      7829.560      1578.039
## 6      27567.22       58301.59       55818.12     30897.658     18702.752
## 7      20342.19       34810.22       29560.63     12070.757      2207.556
##   259.057_0.712 377.0353_0.713 263.0249_0.69 370.0786_0.733 499.0756_0.705
## 2     20013.455       19127.55      16781.05       3990.016       1729.873
## 3      7821.584       47368.90      22301.06       3680.261       1900.208
## 4     16123.069       43134.07      19644.12       3496.406       1986.467
## 5      8619.797       27326.04      25428.93       2746.170       3551.452
## 6     13171.827       31398.59     150805.66       3453.331       2036.747
## 7      5871.999       24756.85      11801.44      20682.420       3225.766
##   310.9761_0.719 291.0345_0.717 576.1384_0.705 424.0493_0.721 479.0535_0.737
## 2       55626.69       22876.67       500.0201      23092.508       1715.251
## 3       73050.55       31448.65      1191.1466      18950.043       1446.025
## 4       86704.84       29264.34      1416.7020      10549.774       2122.061
## 5      102870.61       36290.96      1044.0050       8377.034       1198.108
## 6       77251.23       30482.21      2239.2495      19477.725      15126.667
## 7       63273.56       18923.06      1260.1454       9328.327       1831.159
##   405.0285_0.72 230.0139_0.763 418.1149_0.722 303.0715_0.727 258.0424_0.699
## 2      34730.88      26786.172       9386.856       25215.32      11518.438
## 3      96463.87     173433.340      27600.758       30536.90       7196.173
## 4      66619.45       7272.182      19513.600       19851.10       9132.303
## 5     213321.17      31827.668      10812.652       31402.52       9889.745
## 6      91735.66    1094556.000      20853.950       40252.75       6244.516
## 7     129526.12      11000.619       9241.500       44833.55       6408.332
##   549.0364_0.757 485.0955_0.681 303.0712_0.728 584.0883_0.697 573.1087_0.695
## 2      1020.5068       1766.916       25215.32       1191.607       500.0201
## 3      1264.0416       1969.423       30536.90       1020.028      1564.3948
## 4       500.2725       2078.967       19851.10       1133.779      1315.0110
## 5      1164.9730       1888.713       31402.52        500.000      1212.0080
## 6      1231.2000       2009.342       40252.75       1079.573      5382.2840
## 7       502.2908       1626.033       44833.55       2581.037      1605.2543
##   422.0501_0.727 218.1032_0.748 247.0277_0.755 175.0241_0.753 194.046_0.798
## 2       8559.401       13785.02      11656.164      18934.527      85857.49
## 3       6211.201       19853.60      18421.383       6923.810     266435.78
## 4       4910.769       13012.57       7439.392       5896.429     123845.42
## 5       3516.970       11549.19      24980.500       9438.662     212657.14
## 6      11584.159       19291.59      12509.654      23864.926     100885.55
## 7      13048.554       14139.41      40544.082      16835.719     788230.60
##   137.0248_0.733 191.0524_0.713 205.0352_0.76 343.0666_0.756 457.0689_0.726
## 2       3329.118       128032.3      73709.00      23513.518       2072.705
## 3       4851.530       127600.2      39592.65       9829.716       1468.569
## 4       2741.812       114005.6      47546.77       9161.826       1876.003
## 5       7323.842       113870.6      44800.91       4856.681       1510.607
## 6       5956.785       104292.6      87591.40       3503.153      14086.122
## 7      13008.805       126887.2      49713.25      19257.445       2431.969
##   147.0298_0.76 191.0267_0.755 389.1038_0.786 161.0454_0.768 855.1239_0.785
## 2      95357.31       35133.37       1946.280       57661.74       500.0201
## 3     135842.72       34729.11      20584.535       53200.08       502.2117
## 4      70525.44       34061.31       2451.440       53321.21       500.2725
## 5      93652.48       35948.69       5237.721       50538.83       500.0000
## 6      72001.38       32916.34      17286.379       49353.99      1048.2848
## 7      86855.19       41353.94      44659.992       62155.12       502.2908
##   541.1395_0.742 446.038_0.779 177.0225_0.776 324.0723_0.776 208.0646_0.766
## 2       500.0201      1658.710       40995.26       68043.33       8426.654
## 3      1242.6123      2290.653       46588.39       57325.23       8188.783
## 4      1000.5450      1217.450       47735.32       34703.08       4456.158
## 5       500.0000      2121.245       39499.20       22483.91       2965.903
## 6      2088.4001     38099.400       43068.27       42821.12       6748.762
## 7      1661.0409      2480.765       39971.66      163982.88       5671.883
##   757.1576_0.789 301.0563_0.774 1153.2827_0.789 144.0665_0.781 645.1108_0.776
## 2       500.0201       6962.695        500.0201       51786.94      1206.7730
## 3       502.2117       6924.001        502.2117       34476.71      1019.9524
## 4       500.2725       4752.056        500.2725       42257.63       500.2725
## 5       500.0000       2565.265        500.0000       28798.98       500.0000
## 6      1481.4994      29855.465        500.0225       35803.42      1585.2367
## 7      1157.0000      14510.417        502.2908       27630.07      1248.0000
##   165.0409_0.76 555.1553_0.783 245.1137_0.783 299.1247_0.784 364.0954_0.768
## 2      19419.22       500.0201      13970.721       8509.224       1520.592
## 3      17942.37      1373.9762      30608.924      12404.673       1945.422
## 4      28789.53       500.2725      14505.489       9157.642       1601.935
## 5      17728.72       500.0000       6751.876      11656.090       1604.762
## 6      19712.34      2497.3308      20732.162      11879.697       1327.767
## 7      31254.99      1189.3865      20329.336      14583.196       2468.376
##   357.0823_0.779 741.1865_0.791 195.0512_0.787 360.1406_0.756 315.0713_0.751
## 2       7354.266       500.0201       29134.76       2263.692       3304.153
## 3       4200.445       502.2117       47263.91       2437.948       2395.372
## 4       6396.362       500.2725       73776.23       2458.704       2043.200
## 5       7101.456       500.0000       30895.54       1365.453       2464.498
## 6       4792.830      2534.9316       70425.29       2573.952       2448.085
## 7      34339.930       502.2908      215220.38       1706.795       4512.069
##   319.1032_0.789 274.039_0.769 275.0221_0.754 359.0971_0.789 204.9812_0.795
## 2       22483.98      18499.63       10979.95       2741.616       53297.82
## 3       11512.69      11861.78       24789.88       1889.988       41683.94
## 4       14819.93      14183.16       32565.01       2321.969       70088.27
## 5       17165.52      11632.62       24247.92       1814.458       51446.68
## 6       17031.85      11086.06       20019.98     168268.170      104181.96
## 7       25862.67      13121.26       16547.59       4055.086      110612.68
##   216.9808_0.715 771.1962_0.744 231.9926_0.79 356.0987_0.796 261.0072_0.769
## 2       60342.52      1552.0686     11582.256       2576.593       30946.57
## 3      105255.52       502.2117     47461.793       1573.080       68774.08
## 4       42331.01       500.2725     25121.129       3326.744       43543.43
## 5       48391.12       500.0000     17798.205       1769.738       47227.62
## 6      127584.33      1172.4828     13655.878      10235.521       27382.33
## 7      101494.09      1336.9645      5845.785       2619.397      171906.81
##   391.1124_0.79 194.0546_0.797 227.9971_0.795 502.2071_0.806 415.1607_0.797
## 2      2238.778       8675.968       66358.00       500.0201       2236.255
## 3      2061.178      18655.820       81859.79       502.2117       6679.469
## 4      7646.023       9949.765       50406.92       500.2725       2686.223
## 5      1121.088      15096.397       15420.12       500.0000       2700.322
## 6     10854.772       8582.582       30611.09       500.0225       2364.138
## 7     36579.460      38545.450       44149.20       502.2908       2757.714
##   361.1497_0.795 303.0177_0.795 223.0623_0.802 189.9895_0.816 375.1294_0.798
## 2       4447.724       7302.100       1144.658      10736.895       7363.248
## 3      21850.850      14427.292       1835.333      19163.754      28331.732
## 4       7930.003      11333.239       1118.653      13191.913      14353.000
## 5       3655.935       8702.116       1202.347      25967.732       4386.368
## 6      16740.793      42028.562       3526.491       9589.386      18520.574
## 7      32214.530      36042.926       2448.069      19991.594      53226.594
##   276.0018_0.763 168.0301_0.797 399.0923_0.803 373.0779_0.78 227.1036_0.798
## 2       1157.864       36358.31       2278.414      2605.317      12904.631
## 3       3154.721       50863.81       2017.672      1747.880      25581.787
## 4       2522.970       48530.44       2583.001      3284.872      15256.974
## 5       9869.246       61832.36       2220.696      1572.836       7753.059
## 6      44971.043       39271.98       5329.550      5729.190      16874.271
## 7       3434.575       43985.10       6257.025      6013.580      21659.885
##   479.0506_0.791 411.0787_0.764 326.0866_0.798 579.0457_0.796 194.0459_0.799
## 2       500.0201       4575.452       8678.553       1057.334       85857.49
## 3      1241.6469       4025.590      20011.016       1393.800      266435.78
## 4      1161.4454       1995.375       1661.007       1024.116      123845.42
## 5      1198.1080       3552.362      14005.729        500.000      212657.14
## 6     15126.6670       2133.098     524976.250       1327.663      100885.55
## 7      1831.1595      30593.572       5637.061       1434.307      788230.60
##   861.1404_0.799 1123.2723_0.775 516.2234_0.803 230.9967_0.757 282.0473_0.802
## 2       500.0201        500.0201       500.0201       26454.28       5276.602
## 3       502.2117        502.2117       502.2117       48949.51      43431.773
## 4       500.2725        500.2725       500.2725       37910.18      10161.483
## 5       500.0000        500.0000       500.0000       30236.19      17003.963
## 6      1474.1422        500.0225       500.0225       28247.52      34313.310
## 7       502.2908       1337.8524       502.2908       34517.13      25865.146
##   182.0076_0.788 292.0225_0.799 258.9916_0.797 182.0282_0.77 219.0508_0.792
## 2      1016.8692       15912.06       9436.893      500.0201       2348.045
## 3      1093.6797       38215.83      27677.531      502.2117       9981.265
## 4      1148.9729       15948.46       8003.412     3617.5800       2965.590
## 5      1069.3060       19340.38      21220.290     1865.3220      24056.643
## 6     17604.9840       11497.80      15724.651    57946.8830       2706.570
## 7       502.2908       52938.43      13266.907     4012.2197     482739.400
##   182.0458_0.803 489.0926_0.758 337.0556_0.777 389.1018_0.792 371.0976_0.801
## 2       38961.17       1434.736      77891.110       2451.103       6994.354
## 3       51169.77       1411.704       2123.831      20584.535       3121.879
## 4       33758.14       1341.124       3934.707       2709.416       7716.414
## 5       25916.16       1399.844       5028.712       5237.721       5879.060
## 6       20724.71       1986.882       2222.322      17286.379       5209.325
## 7       17853.48       1288.381      14473.393      49781.420       6424.058
##   403.197_0.807 131.0349_0.8 372.0951_0.795 311.0753_0.804 230.0156_0.793
## 2      4133.206     93725.93       1870.997       7916.062      26786.172
## 3     16434.295     52997.45       1706.720       4291.223      20267.777
## 4      5214.395     74554.63       2679.115       1645.019       7272.182
## 5     18957.777     29278.06       1695.265       4510.502       7118.002
## 6      4943.947     62619.96       3602.769     101489.984     194732.380
## 7      3190.854     34408.77       2704.463       5213.963      13361.840
##   181.9916_0.803 675.1192_0.802 248.0596_0.808 203.0021_0.801 230.0135_0.791
## 2       2235.689      2395.5625       4100.937       8536.004      26786.172
## 3       1330.186       502.2117      94115.810      13174.426     173433.340
## 4       1695.219       500.2725       8698.756       9756.973       7272.182
## 5       7599.906       500.0000      12406.228      20716.230      20028.576
## 6     255537.970      1356.0408       8838.046      10468.705     194732.380
## 7       5933.579      1036.9396      40463.098      14179.208      13361.840
##   273.0073_0.807 313.0567_0.793 359.1353_0.806 227.06_0.796 576.1317_0.792
## 2       21640.53       1576.887       1199.965     2327.690       500.0201
## 3       55730.02       2747.077       2705.912     1677.556       502.2117
## 4       32845.93       2117.706       2024.061     2125.570      1130.5149
## 5       41429.94       1615.805       2194.423     2231.195      1044.0050
## 6       56694.30       2740.616       5522.307    18335.857      2239.2495
## 7       43730.25       8706.571       2298.170     1403.551      1486.2402
##   368.0998_0.802 336.0708_0.807 224.0563_0.81 419.1134_0.748 855.1238_0.789
## 2       3468.846       7069.770      40847.93       2662.724       500.0201
## 3       2115.936       5099.174      11843.74       5500.953       502.2117
## 4       1713.510       4117.153      10996.38       2803.256       500.2725
## 5       1230.698       1282.872      11374.53       2390.166       500.0000
## 6       1444.282       4479.453       8285.08       4002.024      1048.2848
## 7       1337.217       3150.002      16682.55       4428.649       502.2908
##   213.9982_0.833 188.9864_0.815 609.1423_0.802 572.1076_0.784 139.0401_0.786
## 2       2720.959      162080.44       500.0201      1015.9120      1527.6703
## 3       4570.818      209628.94      1545.8417      1006.0687      1350.2716
## 4       3981.926      170851.80       500.2725       500.2725       500.2725
## 5       2028.928      255497.62       500.0000       500.0000      1285.3130
## 6       5432.615       87560.83      1138.2489      1088.1221      5499.4810
## 7      12856.666      211470.36      1402.1483      1305.2180      1352.0557
##   325.0323_0.804 181.0505_0.817 227.0559_0.8 124.01_0.775 422.1067_0.783
## 2       1310.002       15064.97     2327.690    2415.2400       1149.372
## 3       1439.722       67733.42     1840.908    1614.5555       1933.433
## 4       1111.012       28290.88     2125.570    1725.7606       1274.432
## 5       1023.366       18807.29     2467.409    1732.1370       1027.562
## 6       2717.388       16499.27    18335.857    2749.5370       1184.949
## 7      28907.125       94906.85     1695.807     502.2908       2038.322
##   313.999_0.818 212.0023_0.825 448.1934_0.807 173.9923_0.799 585.0899_0.796
## 2      5934.950       37405.90      1357.0842       8043.618       500.0201
## 3     14747.123       90601.11       502.2117      16555.283      1217.2870
## 4      6826.158       54552.43       500.2725      16701.996       500.2725
## 5     12779.035       24581.03       500.0000       7784.886       500.0000
## 6      5558.288       99594.68      2584.2312       5053.175      1103.8805
## 7     24121.504      173987.56      2230.3474      17356.809      1146.1119
##   463.107_0.79 477.1007_0.807 347.0076_0.814 167.0211_1.15 335.0494_1.152
## 2     3221.630      1190.4961      1787.5654      403188.2       119424.0
## 3     2015.398       502.2117      1232.8690      314273.6       125768.9
## 4     2161.774      1062.6462       500.2725      334604.5       134767.9
## 5     1300.083       500.0000      1404.9000      373212.3       146170.8
## 6     2268.460      1781.0600      1910.8651      600193.9       270152.7
## 7     2006.003      1363.7043      1203.0910      460556.6       205647.5
##   381.0301_1.155 380.0301_1.155 217.0161_1.159 191.0201_1.159 405.0285_1.16
## 2       35170.88       6337.170       19659.67       363765.7      27292.41
## 3       55100.88      16793.746       41126.77      1733155.1     150123.97
## 4       51315.15      10487.818       42623.04      1347743.6     109597.84
## 5       51177.84       5253.422       38632.85      1152099.2     100218.33
## 6       71307.18      17658.123       33021.25       811499.5      51973.11
## 7       59260.80      33215.348       65129.53      1213337.4      98734.79
##   111.0087_1.164 427.0103_1.161 310.9691_1.162 188.9863_1.166 191.0276_1.165
## 2       34893.67       12452.24       32047.78       65642.76       23857.48
## 3      158133.19       51556.84       65223.33       72952.63       35074.52
## 4      120755.10       42546.73       54402.04       48730.15       29036.61
## 5      109486.63       34395.36       51852.62      109894.02       34110.14
## 6       82226.09       23796.80       41272.41       31848.63       37843.87
## 7      121721.12       37825.11       51626.86       76486.52       34429.62
##   173.0091_1.231 258.044_2.007 375.0931_2.077 227.0554_2.1 324.0723_2.134
## 2       30944.48     2533.6267       500.0201     500.0201      21306.951
## 3       44537.51      502.2117       502.2117     502.2117       9048.322
## 4       34525.39     4374.3315       500.2725     500.2725       9504.115
## 5       28947.87     4493.7190       500.0000     500.0000       2797.101
## 6       29390.31     1068.1229       500.0225    2764.5764      10496.891
## 7       46178.58     1863.5226       502.2908     502.2908      11165.883
##   161.9866_2.133 182.0458_2.174 213.9981_2.254 326.0973_2.32 384.0537_2.335
## 2       500.0201       28041.90       6752.218     1109.6661       2353.773
## 3    159573.4000       34700.82      12230.571     1026.8625       3245.935
## 4       500.2725       19610.77       5277.759      500.2725       2293.590
## 5      7515.8660       15922.64       3254.754     1968.7350       2110.682
## 6      2005.9071       18022.00       7348.520    41790.5160      44484.633
## 7       502.2908       20148.48      20126.840     1599.8134       5405.795
##   653.1834_2.294 675.1659_2.308 348.0769_2.315 446.0335_2.313 326.0892_2.313
## 2       500.0201       500.0201       1950.754       500.0201       1772.146
## 3       502.2117       502.2117       1720.414       502.2117       1728.849
## 4       500.2725       500.2725       1621.403       500.2725       1122.494
## 5       500.0000       500.0000       3782.358      2426.6470      17648.123
## 6    156564.5200    148206.0600      98122.340     67530.6900     843437.060
## 7       502.2908      1043.6969       3945.992      2553.4590       1233.159
##   338.1178_2.307 165.0417_2.342 457.0963_2.367 227.9972_2.377 246.0109_2.385
## 2       500.0201       21899.05       500.0201       65861.16       1096.836
## 3       502.2117       12035.69       502.2117       75080.20       2644.639
## 4       500.2725       24832.46       500.2725       49478.11       1189.202
## 5       500.0000       10827.28       500.0000       17093.96       2750.470
## 6       500.0225       14773.14      2259.8994       27637.51      66962.586
## 7       502.2908       38866.59       502.2908       32202.36       2549.245
##   206.9967_2.418 479.0459_2.443 233.0124_2.47 645.1901_2.522 309.0242_2.522
## 2       15948.39       500.0201     33029.730       500.0201       500.0201
## 3       34906.75       502.2117     28601.252       502.2117      1160.0740
## 4       16647.91       500.2725     12021.533       500.2725      1167.9474
## 5       29180.84       500.0000     10164.411       500.0000      1164.2970
## 6       26154.96       500.0225      5366.024       500.0225      1743.6094
## 7       28900.77       502.2908     24986.861       502.2908      2152.3250
##   230.0129_2.513 230.0159_2.501 483.0154_2.51 232.0047_2.518 516.1022_2.528
## 2      18111.777      16665.170     1284.0045      1882.2661      1137.5221
## 3      18752.578      17105.092      502.2117      2045.0801      1284.2080
## 4       2599.209       2599.209      500.2725       500.2725       500.2725
## 5      31888.178      24080.053      500.0000      2336.1060      1134.3900
## 6     791158.000      38006.598    47916.9340     39621.2150     12032.2110
## 7       3692.041       2773.920     1381.8585      1461.1941      1284.2013
##   359.0975_2.524 274.0027_2.51 565.137_2.579 218.1033_2.56 489.0936_2.593
## 2      1599.7126      5232.607      500.0201      9406.848       500.0201
## 3      1188.7185     47321.297      502.2117     14377.957      1512.1270
## 4       500.2725      4110.276      500.2725     10466.689       500.2725
## 5      1166.5920     13986.703      500.0000      8230.018       500.0000
## 6      3931.9773      4022.951      500.0225     10757.546       500.0225
## 7      1577.5042     22292.084      502.2908      8732.938      1315.8228
##   422.0544_2.559 432.0832_2.56 579.0437_2.578 223.0583_2.562 611.0554_2.581
## 2      1104.2598      500.0201      1039.5365       500.0201       500.0201
## 3       502.2117      502.2117       502.2117       502.2117       502.2117
## 4       500.2725      500.2725      1002.3151       500.2725      1092.6956
## 5       500.0000      500.0000       500.0000       500.0000       500.0000
## 6       500.0225      500.0225       500.0225       500.0225       500.0225
## 7       502.2908      502.2908      1737.7618       502.2908       502.2908
##   609.0591_2.577 449.0698_2.589 650.1898_2.57 364.0955_2.559 320.1087_2.579
## 2       500.0201      1219.1797      500.0201       500.0201       500.0201
## 3       502.2117      1021.5049      502.2117       502.2117       502.2117
## 4       500.2725       500.2725      500.2725       500.2725       500.2725
## 5       500.0000       500.0000      500.0000       500.0000       500.0000
## 6      1051.0883      1125.1115      500.0225       500.0225       500.0225
## 7       502.2908      1406.8080      502.2908       502.2908       502.2908
##   494.0742_2.602 579.126_2.604 361.0218_2.595 295.03_2.565 293.0743_2.543
## 2       500.0201      500.0201       1896.596     500.0201       1251.028
## 3       502.2117     1187.2145       1686.038    1244.3517       1513.065
## 4       500.2725      500.2725       1616.001     500.2725       1981.003
## 5       500.0000      500.0000       1625.198    1469.2060       1259.049
## 6       500.0225     1529.4370       6475.295    4355.3706       2277.065
## 7       502.2908     1628.0400       1148.918    1191.4563       1544.767
##   293.0331_2.576 484.0498_2.566 623.0319_2.6 204.9812_2.586 307.0111_2.574
## 2       1513.241      1068.2694     500.0201       50909.45       500.0201
## 3       2188.218      1088.0094    1464.6678       26349.61       502.2117
## 4       1896.873       500.2725    1028.0994       76979.25      1260.3247
## 5       3129.836       500.0000     500.0000       41582.26      1192.4130
## 6      50455.020      1007.6409    1067.2473      126316.24      8508.9480
## 7       1738.154      1098.5785    1018.5519      104325.95       502.2908
##   328.9944_2.584 356.1002_2.592 168.0302_2.597 801.2049_2.656 389.1059_2.672
## 2       500.0201       1126.532       17155.63       500.0201       500.0201
## 3      1513.3253       1004.830       22743.08       502.2117      1421.5360
## 4      1029.7555       1128.579       24585.02       500.2725       500.2725
## 5       500.0000        500.000       26314.13       500.0000       500.0000
## 6      2172.9480      38366.895       19339.69       500.0225     10951.8910
## 7      1161.0303       2596.624       20257.09      1234.3824      1916.8765
##   487.0759_2.632 675.1222_2.643 457.097_2.652 675.2009_2.65 509.0519_2.681
## 2       500.0201       500.0201      500.0201      500.0201       2563.280
## 3       502.2117      1012.2609      502.2117      502.2117       3832.673
## 4       500.2725       500.2725      500.2725      500.2725       2756.965
## 5       500.0000       500.0000      500.0000      500.0000       5336.205
## 6      1562.7051       500.0225     2590.1562     1027.5782       1662.388
## 7       502.2908      1045.9308     1177.7500      502.2908       2306.194
##   590.1471_2.657 178.0524_2.721 216.9812_2.65 829.2715_2.727 323.0414_2.68
## 2       500.0201       430067.5      29082.23      3268.4067     1270.5984
## 3       502.2117       558012.4      43089.94      5805.1704      502.2117
## 4       500.2725       302084.4      20813.85      1082.7236      500.2725
## 5       500.0000       445030.1      24046.23       500.0000      500.0000
## 6       500.0225       171996.0      48939.37       500.0225     5156.4673
## 7      1154.0962       386786.5      50271.47     12940.9280     1222.4187
##   835.2888_2.725 303.072_2.684 260.0239_2.686 659.1667_2.763 669.1448_2.74
## 2       4796.181      12730.77       1589.989      5241.6860      8758.166
## 3       7558.742      17661.34       1312.136      7732.2590     16029.628
## 4       1253.800      12084.00       1296.753      1978.4995      4091.143
## 5        500.000      21257.04       3538.354      3215.1780      2959.554
## 6       1105.322      25477.35      54481.520       500.0225      3764.209
## 7      15031.091      29635.99       1088.153      5833.2200     22590.621
##   313.9951_2.734 596.1248_2.733 480.1382_2.735 194.0459_2.735 194.0495_2.735
## 2       5580.389      1975.0679       8888.596       47558.73      47558.727
## 3      10188.704      2632.9190      19508.867      119709.36     119709.360
## 4       9679.087      1078.3878       8442.520       90103.25       7482.223
## 5      11386.321      2541.9590       7655.292      108583.84       9327.712
## 6       6570.588       500.0225       7068.976       63520.39      63520.387
## 7      21870.379      2943.0490      97898.510      392848.94      27427.893
##   411.0814_2.735 395.0857_2.735 379.0909_2.789 549.1963_2.753 744.2193_2.763
## 2       1161.512       7264.742       39631.17       39381.41       4912.695
## 3       4568.208      16883.516       44951.27       61347.68       7099.320
## 4       2500.219      11030.845       22708.02       13445.17       1960.904
## 5       3053.327      18969.777       44086.99       10282.17       1940.490
## 6       2178.001       4956.781        9066.33       12858.31       1098.712
## 7      25949.787      32805.008       26848.96      124875.27      11788.747
##   263.1041_2.759 464.1437_2.772 264.1071_2.755 665.1832_2.777 178.0515_2.811
## 2       569173.9       53509.53       97138.41       7740.333       582890.1
## 3       825874.3       77648.02      138249.42       8456.492       629197.4
## 4       291803.0       22589.67       48649.60       2622.571       330607.8
## 5       256603.9       29994.00       45349.05       4272.781       543115.2
## 6       292615.9       16214.35       50580.37       1148.283       216391.0
## 7      1521374.0       77026.53      218575.60       6747.918       548982.2
##   188.9864_2.765 829.2715_2.758 835.2887_2.754 195.0514_2.765 396.0904_2.751
## 2      125332.46       3268.407       4796.181       9668.152       2773.470
## 3      171900.19       5805.170       7558.742      16462.285       4553.333
## 4      126318.16       1082.724       1253.800      44346.164       3827.334
## 5      221183.20        500.000        500.000      12144.354       4661.544
## 6       75570.37       1149.604       1260.793      42334.406       2355.992
## 7      182080.31      12940.928      15966.051     129361.840       9247.482
##   459.1629_2.778 391.1122_2.774 263.1397_2.777 383.0644_2.771 242.0128_2.785
## 2       1440.468       500.0201      24785.248      10508.136      87696.150
## 3       2860.357       502.2117      36097.610      10048.537      39388.586
## 4       3474.981      3514.7710      11254.750       6677.061       4049.327
## 5        500.000       500.0000       9767.227       6365.724       3620.569
## 6       3436.175      2802.4949      11711.818       9871.016       4309.526
## 7      28042.479     10796.5210      64490.080      24387.041       5961.074
##   263.0272_2.81 931.1224_2.809 669.1447_2.763 551.0331_2.81 835.0489_2.8
## 2      18140.54      1254.2596       8758.166      1184.872     500.0201
## 3      15501.46      1108.3787      15741.449      1241.011    1436.2246
## 4      12893.21       500.2725       4091.143      1162.429     500.2725
## 5      17381.93      1192.1540       2959.554      1748.406     500.0000
## 6     108861.81       500.0225       3764.209      1210.977    1288.9585
## 7      12464.62      1427.3160      22590.621      1598.597    1269.8384
##   246.9917_2.802 565.0065_2.811 263.0591_2.805 331.091_2.747 549.1196_2.793
## 2      27239.266      1493.6395      1163.3062      56195.74       1929.513
## 3      98978.900       502.2117      1078.2225      57986.16       1893.382
## 4      19829.844      1257.8796       500.2725      38724.47       1031.834
## 5      33894.020      1155.7850      1244.9700      32944.37       1270.531
## 6       7881.444      1449.9929      3014.2866      44828.70       3602.184
## 7      20859.158      1317.6528      1540.5650      73977.19       2059.146
##   265.0184_2.828 468.0834_2.815 464.0663_2.822 659.1239_2.825 549.035_2.814
## 2       1264.222      1004.6373       1094.840       500.0201     1317.6860
## 3       1211.664       502.2117       1611.516       502.2117     1155.6483
## 4       1023.207       500.2725       1514.511       500.2725      500.2725
## 5       1147.350      1006.6750       1764.189       500.0000      500.0000
## 6       6242.403      7345.4976       3142.148       500.0225     1219.5210
## 7       1282.289      1068.5092       1294.544       502.2908     1213.9509
##   645.1099_2.832 383.0324_2.787 473.0218_2.809 181.9917_2.823 549.1963_2.777
## 2      1395.7289       5912.826       3270.011       1184.965       39381.41
## 3      1463.8264       4728.077       3020.374       1102.500       61347.68
## 4       500.2725       4706.573       2659.091       1683.864       13445.17
## 5      1050.5460       3316.681       2979.912       4367.650       10282.17
## 6       500.0225       8058.697       4164.370     137960.950       13319.27
## 7      1493.8925       5256.630       2292.661       3359.276      124875.27
##   464.1437_2.808 419.1155_2.861 610.164_2.859 896.2543_2.86 219.0524_2.85
## 2       60517.58       500.0201      5761.977     1530.5090      500.0201
## 3       77648.02       502.2117      6249.296     1049.4247      502.2117
## 4       22589.67       500.2725      2146.551      500.2725      500.2725
## 5       29994.00       500.0000       500.000      500.0000    13221.7040
## 6       18029.01      5512.6924      2944.638      500.0225      500.0225
## 7       80643.57       502.2908     21186.635     4827.6700    16056.6080
##   505.1427_2.841 580.1297_2.848 324.0723_2.857 665.1833_2.829 219.0509_2.854
## 2      1196.0145       5893.484       30983.62       8325.764       500.0201
## 3      1200.0968       4994.884       27085.79       8456.492       502.2117
## 4       500.2725       2140.148       25058.81       2833.050      1030.7941
## 5      2385.1800       4268.077       11818.71       4272.781     15151.2940
## 6      1112.1592       1546.441       31264.04       1989.700      1124.0906
## 7     38062.6170       2892.536       98016.70       6747.918    232285.7000
##   659.1666_2.837 263.1041_2.796 645.1893_2.881 560.1364_2.889 441.0612_2.876
## 2       6892.925       552014.1      1417.7347       500.0201      11581.268
## 3       7546.528       790106.5      1507.5568      1010.2306       9240.389
## 4       1986.536       291803.0       500.2725       500.2725       5040.635
## 5       3215.178       256603.9       500.0000       500.0000       9564.785
## 6       1191.755       295047.3      1813.0662      1330.9205       4080.586
## 7       6881.403      1381773.8      1361.5044      1112.5435       5153.303
##   574.1142_2.883 343.0669_2.881 178.0513_2.879 379.0909_2.88 241.1193_2.896
## 2       3906.262      25783.293       712494.6      56203.88      19704.229
## 3       4457.307      11092.471       623981.8      42185.87      43030.293
## 4       1635.880      12100.050       352942.9      21750.94      36307.110
## 5       3542.160       3660.505       543115.2      44153.90       9643.351
## 6       1020.167       2780.454       253609.4      12113.66      17985.604
## 7       2298.904      18084.572       580858.1      32058.97      23183.832
##   203.0021_2.888 246.0383_2.873 574.1523_2.913 134.0611_2.89 370.0781_2.895
## 2       16123.00       72523.94       500.0201     27422.166       1753.095
## 3       48660.64       60718.72       502.2117     23332.582       1532.476
## 4       18991.71       55614.60       500.2725     12033.973       2974.486
## 5       28931.72       83623.16       500.0000     20631.459       1742.336
## 6       16632.70       42570.63      1073.2687      8854.524       2740.117
## 7       19111.61       41042.73      1010.2699     20185.771      15739.560
##   468.0438_2.896 277.0007_2.942 464.1436_2.856 432.1639_2.932 395.0857_2.92
## 2       1630.944       2764.456       60517.58       500.0201      4678.250
## 3       1174.221       1816.158       62852.19       502.2117     19229.000
## 4       1794.558       3747.042       17987.10       500.2725      4045.293
## 5       1024.719       2219.419       29994.00       500.0000      8879.860
## 6       1138.251       5460.667       18029.01      2839.2302      2433.522
## 7       2265.843       4001.672       80643.57       502.2908     13934.565
##   194.0459_2.921 373.1067_2.937 659.2045_2.918 389.1005_2.94 388.047_2.937
## 2       24421.23       5205.502       500.0201      500.0201      21387.04
## 3      135220.53      28267.598      1275.6581     7641.4185      36570.96
## 4       28190.68       3377.223       500.2725     1311.1658      11045.64
## 5       42752.77       9139.062       500.0000     1345.6640      11872.90
## 6       39412.07      11700.846      1064.9032     9700.9730      11901.34
## 7      146909.39      29116.938      1136.2034    11689.8130      25565.73
##   422.1084_2.915 473.0996_2.932 428.0941_2.98 157.0506_2.959 357.0826_2.931
## 2       500.0201      15568.201      500.0201       23276.57       4140.472
## 3       502.2117      38337.500     1212.6360       23729.44       1923.603
## 4       500.2725       6745.863      500.2725       40769.50       3403.037
## 5       500.0000       4761.560      500.0000       14662.70       2746.002
## 6      1230.8770       9643.778     3624.5490       38093.66       3540.575
## 7      1393.5662      37457.280     1315.9333       26698.38      20611.307
##   459.0843_2.964 263.1054_2.91 623.1618_2.946 374.0316_2.965 227.0628_2.987
## 2       7907.939      522072.0      1284.4814      11341.154      1012.7760
## 3      16352.291      583875.6      1028.4437      18363.053       502.2117
## 4       6574.000      226123.2       500.2725      12535.910       500.2725
## 5       3871.335      204995.9       500.0000      11371.824       500.0000
## 6       2946.049      295047.3      1066.5320       3823.347     10034.8740
## 7      16488.660     1323426.1      1008.9670      16596.332       502.2908
##   477.1039_2.949 139.0401_3.003 227.0551_2.986 609.1484_2.937 322.1104_2.943
## 2       500.0201      1051.8927      1485.8943      2539.2603       500.0201
## 3      1285.8231      1024.3806      1217.1273      1957.0605       502.2117
## 4       500.2725       500.2725      1569.8837       500.2725      1002.4456
## 5       500.0000       500.0000      1152.8790      1008.6580       500.0000
## 6      1268.8782      4151.3193     14865.2890       500.0225       500.0225
## 7      1123.1480      1233.3864       502.2908      3621.3490       502.2908
##   1093.9937_2.988 785.2097_2.974 336.1218_3.046 563.1044_2.949 487.0726_2.982
## 2        14059.90       500.0201       1228.127       1366.604      1291.2161
## 3        19792.44       502.2117       1322.599       1505.870       502.2117
## 4        24328.44       500.2725       1852.088       1219.286      1037.9515
## 5        21201.11       500.0000       1044.224       1060.485      1200.0750
## 6        10119.53       500.0225       1324.446       1141.150      1299.7789
## 7        19701.69      1508.3335       1304.316       2479.142      1657.1627
##   389.1043_2.952 173.0001_2.997 577.1184_2.969 771.1944_2.999 368.9723_3.004
## 2       500.0201       15839.01       500.0201       500.0201       5975.873
## 3      3734.0420       27973.33      1818.1772       502.2117      26272.984
## 4      1241.3461       27233.02       500.2725       500.2725      23327.082
## 5       500.0000       18762.62       500.0000       500.0000      12524.897
## 6      9700.9730       10526.39       500.0225       500.0225       4273.046
## 7      6027.4710       27079.77      1620.6034       502.2908      18753.400
##   172.9915_3.001 359.1353_3.002 382.9875_3.002 875.1494_2.993 555.0787_2.996
## 2       228495.2       2235.382       12367.22       500.0201       500.0201
## 3       543342.4       2762.093       58994.66       502.2117       502.2117
## 4       461902.0       3007.415       22580.51       500.2725       500.2725
## 5       275754.2       2034.514       12267.22       500.0000      1000.2270
## 6       149352.1       4497.645       11250.29       500.0225      1806.5128
## 7       432861.4      15491.334       37467.49      1036.0077      1070.4640
##   277.0329_2.993 855.1197_2.99 645.1887_2.968 360.1388_3.006 224.0561_3.018
## 2       1357.026      500.0201       500.0201      1218.9586      30314.693
## 3       1085.498      502.2117       502.2117      1373.2695       7335.350
## 4       2463.606      500.2725       500.2725       500.2725       8555.215
## 5       1895.586      500.0000       500.0000       500.0000       8715.640
## 6       6097.403      500.0225      2040.2936      1191.8896       8576.362
## 7       3241.910      502.2908       502.2908      2906.1467      16478.840
##   1117.2561_3.018 861.1356_3.001 560.1365_2.971 800.2743_3.027 181.0504_3.017
## 2        500.0201       500.0201       500.0201       500.0201       24167.77
## 3        502.2117       502.2117       502.2117       502.2117      123787.59
## 4        500.2725       500.2725       500.2725      1187.7285       38108.65
## 5        500.0000       500.0000       500.0000       500.0000       29161.83
## 6        500.0225       500.0225      2716.6870       500.0225       27173.99
## 7        502.2908       502.2908       502.2908       502.2908      176814.88
##   741.1857_3.018 359.0958_2.977 1123.2728_3.021 457.0623_2.989 741.1856_3.019
## 2       500.0201      1950.8844        500.0201      1511.4958       500.0201
## 3       502.2117       502.2117        502.2117      2918.6355       502.2117
## 4       500.2725      1433.5070        500.2725       500.2725       500.2725
## 5       500.0000      1120.7130        500.0000      1434.8150       500.0000
## 6      1464.4463     99050.0550        500.0225      8062.7080      1464.4463
## 7       502.2908      2729.3610        502.2908      2425.1157       502.2908
##   479.0465_3.005 547.1102_3.005 418.1842_3.015 569.0928_2.988 427.0844_2.991
## 2      1015.8890      1115.2130       500.0201       500.0201       500.0201
## 3      1293.2338      1254.8406      1044.8848      1342.1074      1358.4607
## 4       500.2725       500.2725       500.2725       500.2725       500.2725
## 5       500.0000      1132.7670      1129.5000      1024.9190      1216.8820
## 6      9337.2300      1172.8724     18896.3100      4701.3647     15889.6640
## 7      1005.1578       502.2908       502.2908      1022.4750      1556.0026
##   951.181_3.008 364.0972_3.027 755.2012_3.03 189.0027_3.097 1131.2716_3.026
## 2      500.0201       500.0201      500.0201       34493.90        500.0201
## 3      502.2117       502.2117      502.2117       77083.49        502.2117
## 4      500.2725       500.2725      500.2725       26709.77        500.2725
## 5      500.0000       500.0000      500.0000       19874.87        500.0000
## 6      500.0225       500.0225      500.0225       33752.50        500.0225
## 7      502.2908       502.2908      502.2908       58609.12        502.2908
##   945.1645_3.008 605.1126_3.023 379.0338_3.038 1137.288_3.026 230.0128_3.042
## 2       500.0201      3806.9210       5589.884       500.0201      42695.720
## 3       502.2117      2101.3250      12932.403       502.2117     164720.300
## 4       500.2725       500.2725       5847.483       500.2725       9055.093
## 5       500.0000       500.0000       5296.986       500.0000      25247.043
## 6       500.0225       500.0225       3140.232       500.0225       6230.308
## 7       502.2908      1248.9188       7005.935       502.2908       9821.015
##   814.2904_3.028 336.1214_3.081 432.2027_3.06 828.3048_3.061 500.1902_3.066
## 2       500.0201       1702.684     1075.9193       500.0201       500.0201
## 3       502.2117       1711.119      502.2117       502.2117       502.2117
## 4       500.2725       1852.088      500.2725       500.2725       500.2725
## 5       500.0000       1044.224      500.0000       500.0000       500.0000
## 6       500.0225       1362.488    21346.4320       500.0225      6366.7334
## 7       502.2908       1304.316      502.2908       502.2908       502.2908
##   361.1499_3.066 109.0294_3.11 188.0103_3.118 330.0287_3.095 337.056_3.104
## 2       1650.420      500.0201       64036.36      12306.473     43507.094
## 3       7590.456     1165.1726      144177.08       5873.322      1467.145
## 4       3670.923     1267.8936       44057.82       4786.049      1786.522
## 5       2687.157      500.0000       29924.88      18903.006      3224.266
## 6       8064.451     1546.4446       62198.76      13038.831      1684.150
## 7      12763.809      502.2908      104678.06       5482.946      9325.253
##   197.0442_3.134 375.1278_3.109 979.2124_3.136 1108.0095_3.117 397.0032_3.133
## 2       1582.025       2554.633       500.0201        39322.97       39249.46
## 3       1201.067       9047.228       502.2117        46984.04      135508.28
## 4       2969.080       5938.353       500.2725        33850.31       21442.41
## 5       1757.130       1790.583       500.0000        35272.83       13288.42
## 6       2792.003       6773.089       500.0225        37220.92       38784.61
## 7       1808.867      21871.062       502.2908        49979.11       84667.98
##   583.1092_3.147 889.1651_3.147 187.0383_3.122 187.0075_3.121 973.198_3.133
## 2      1121.1277       500.0201       28279.00       725395.7      500.0201
## 3      1553.4073       502.2117       68913.64      1835242.2      502.2117
## 4       500.2725       500.2725       16783.30       453787.2      500.2725
## 5       500.0000       500.0000       11901.39       327898.0      500.0000
## 6      3172.1243       500.0225       25334.32       657575.0      500.0225
## 7      1627.6866       502.2908       49611.68      1310167.2      502.2908
##   313.0569_3.13 189.0026_3.12 373.0764_3.153 883.1498_3.145 209.0452_3.159
## 2      500.0201      40609.09      1451.3241       500.0201       500.0201
## 3      502.2117      77083.49       502.2117       502.2117       502.2117
## 4     1100.7655      26800.71       500.2725       500.2725       500.2725
## 5      500.0000      19874.87       500.0000       500.0000       500.0000
## 6     3479.0872      36243.54      1334.4143       500.0225      1454.0785
## 7     3640.0960      58609.12      1544.6494       502.2908      1420.8890
##   254.9941_3.14 211.0611_3.158 747.2342_3.15 413.1436_3.2 493.0653_3.147
## 2      30327.89       3144.810      500.0201     1291.383       1505.315
## 3      49599.29       8091.964      502.2117     1676.560       1463.216
## 4      22590.53       3917.637      500.2725     1659.196       1354.618
## 5      17440.75       4739.452      500.0000     1180.482       1028.109
## 6      29116.41       5361.171      500.0225     1563.184       3342.816
## 7      38267.12       3043.821      502.2908     1831.222       1593.804
##   276.0009_3.151 769.2171_3.155 373.1513_3.174 471.0817_3.145 397.0032_3.134
## 2       500.0201       500.0201      1431.4451       1211.033       39249.46
## 3       502.2117       502.2117       502.2117       1474.248      135508.28
## 4       500.2725       500.2725      1178.6276       1141.402       21442.41
## 5     11798.1370       500.0000      1601.2520       1174.738       13288.42
## 6     45853.5740       500.0225      1393.0183       1658.320       38784.61
## 7       502.2908       502.2908      1581.8109       1496.678       84667.98
##   218.9964_3.175 373.114_3.2 175.0611_3.177 230.9968_3.178 429.0831_3.189
## 2       6321.511    2925.521      10914.024       13176.93     28858.9450
## 3      24121.707    5051.859       9954.097       25346.69     18626.2900
## 4      27496.152    4485.041      18593.074       13596.57      1156.7950
## 5      25566.215    2577.343      26890.793       61188.60       500.0000
## 6       5877.723   27763.686       5454.308       23754.15       500.0225
## 7      17027.771   10832.516       7648.310       38262.94       502.2908
##   311.0752_3.182 785.1841_3.18 441.1026_3.212 1124.0041_3.197 599.1056_3.199
## 2       1799.559      500.0201      1254.1736        1171.282       500.0201
## 3       2623.834      502.2117       502.2117        1529.921       502.2117
## 4       1156.815      500.2725       500.2725        2603.463       500.2725
## 5       2230.256      500.0000       500.0000        3558.246       500.0000
## 6      59223.190      500.0225      5217.1530        1624.317      1091.4772
## 7       5574.253      502.2908       502.2908        1314.718       502.2908
##   493.0642_3.179 428.9933_3.184 203.0048_3.202 412.9977_3.204 204.9979_3.197
## 2       1495.074       1401.918       27376.50       4577.090       1948.891
## 3       1393.233       4389.131       43821.94      11395.879       3473.205
## 4       1296.818       2192.729       44778.07       4682.350       3641.913
## 5       1029.883       1831.237       70541.99       6593.104       5097.104
## 6       3342.816       1069.197       41308.26       8312.104       3152.634
## 7       1086.062       2056.286       34643.69       8231.425       3754.874
##   203.002_3.205 303.0178_3.212 370.097_3.208 448.1959_3.232 1108.0095_3.194
## 2      27376.50       4841.248      7298.047       500.0201        39322.97
## 3      43821.94       8432.901     11697.973       502.2117        40273.17
## 4      44778.07       5308.708      4489.029       500.2725        30145.45
## 5      70541.99       6000.432      3371.135       500.0000        32093.63
## 6      41308.26      29464.395      5011.553      4333.9290        34589.28
## 7      34643.69      16405.049     15327.748       502.2908        42463.14
##   429.083_3.201 593.1477_3.228 403.1971_3.26 605.1462_3.238 261.0071_3.241
## 2    28858.9450       500.0201      4809.041       500.0201       1312.109
## 3    18626.2900       502.2117      5487.453       502.2117       6019.498
## 4     1156.7950       500.2725      1935.737       500.2725       2738.302
## 5      500.0000       500.0000     13184.255       500.0000       9583.148
## 6      500.0225      1024.6782      3571.718       500.0225       2233.929
## 7      502.2908       502.2908      2509.020      1458.7856      28961.799
##   209.0452_3.24 368.0971_3.297 509.0409_3.291 1004.2068_3.286 675.9686_3.302
## 2      500.0201       1528.057      16441.803        500.0201       1067.351
## 3      502.2117       1605.141      23053.166        502.2117       6176.889
## 4      500.2725       1167.445       1587.675        500.2725       1225.190
## 5      500.0000        500.000        500.000        500.0000       1599.655
## 6     1335.0479       1091.769       1391.278        500.0225       1230.140
## 7     1420.8890       1252.586       1236.995        502.2908      10873.561
##   608.1059_3.3 423.9954_3.299 681.985_3.302 212.0348_3.301 212.0109_3.298
## 2     500.0201       4184.568      1686.953      19439.395       29946.07
## 3    1257.9000      14292.380     10467.930      53517.110       35281.39
## 4     500.2725       3379.856      2960.251      25333.893       35919.44
## 5     500.0000       1659.044       500.000       9232.063       21052.74
## 6    2132.1924       5947.771      2097.885      20752.488       35933.54
## 7    1638.5148      12934.177     26128.184      84059.914     2170537.00
##   1133.0047_3.302 258.9926_3.301 421.9984_3.301 448.9914_3.302 279.9896_3.301
## 2        12797.53       4464.992       35450.49       4404.797       35932.04
## 3        14018.19      20303.938      123168.12      12268.920       51047.71
## 4        23355.42       2779.143       27037.97       4722.067       43687.11
## 5        13411.94      16626.994       10325.75       1671.214       27310.98
## 6        14721.55      10513.363       45261.73       4655.233       44516.51
## 7        25735.38      11031.125      118986.44      21651.217       68140.02
##   459.0926_3.306 336.0718_3.292 213.9981_3.303 212.0027_3.304 446.9937_3.304
## 2     17902.4410      16148.072       27911.19       515011.8       28600.30
## 3     14738.7490       9804.806       63811.21      1357483.8      113461.44
## 4      1076.4628       7657.444       30817.93       618903.8       42696.15
## 5       500.0000       2649.646       16270.61       271142.4       10988.39
## 6       500.0225      11947.929       37721.73       624528.3       39930.95
## 7      1484.4175       4903.376       90533.00      2170537.0      204963.83
##   572.1094_3.326 429.0423_3.352 215.0021_3.307 594.0962_3.363 283.0822_3.328
## 2       500.0201       2229.628      30515.834       4259.085       40946.71
## 3       502.2117       1990.655      44670.700       2377.000       59168.20
## 4      1203.5193       1930.752       8639.171       1370.145       34351.00
## 5       500.0000       1217.086      92194.445       1024.509       14026.34
## 6       500.0225       2240.363      31006.004       1611.053       47110.36
## 7       502.2908       3608.470      17411.102       4252.189       85490.80
##   569.0956_3.38 245.0124_3.342 755.1981_3.389 273.0074_3.349 347.0881_3.328
## 2     1287.2800       8036.699       500.0201       21716.80       500.0201
## 3     1274.6588      56800.040       502.2117       58623.13       502.2117
## 4      500.2725      15923.605       500.2725       32809.43      1064.0841
## 5     1122.0020      15662.349       500.0000       43919.93       500.0000
## 6     1236.8182       9428.432       500.0225       47351.66      1424.5940
## 7     1189.5416      65532.492      1470.4814       44389.17      2911.9338
##   243.1349_3.353 237.0356_3.369 574.1534_3.396 457.0651_3.354 404.0395_3.379
## 2      37066.195       500.0201       500.0201       500.0201       1617.215
## 3      15518.830       502.2117       502.2117       502.2117       1894.123
## 4      28669.371       500.2725      1050.2803      1061.5360       1597.454
## 5       5885.612      1284.5580       500.0000       500.0000       1430.279
## 6      21825.283      1065.7505      1038.6943      1686.2825       1847.706
## 7       9667.562      1024.9375      1054.7756      1319.7858       2474.001
##   350.088_3.366 388.047_3.398 308.0774_3.378 345.1554_3.382 357.0825_3.399
## 2     28473.035      23033.50       8928.033       3215.546      1369.4939
## 3     34917.164      37494.97       2757.698      14827.999      1168.5048
## 4     33827.992      13517.07       3893.159       7265.261      1548.8846
## 5      7937.236      13641.19       1195.560       3706.526      2546.2840
## 6     19562.957      11891.32       4109.624      12293.021       500.0225
## 7     16392.744      23257.72      22572.178      20402.740     22256.2710
##   283.0822_3.343 381.0802_3.385 347.17_3.394 645.1896_3.451 372.1099_3.404
## 2       40946.71       1248.590     1777.507       2839.900       4393.820
## 3       59168.20       1297.402     1619.688       3352.042       2316.000
## 4       34351.00       1594.837     8759.633       1625.784      22392.506
## 5       14026.34       1237.889     1235.619       1933.333       9403.422
## 6       47110.36       2476.594    16943.121       1261.059       1336.347
## 7       85490.80       1424.450     7108.137       2030.491       1796.516
##   380.0942_3.483 359.1347_3.481 178.0557_3.444 240.9816_3.419 393.0614_3.427
## 2      32171.969       6637.607       33387.32      76310.164       18147.82
## 3      23183.588      10761.731       35296.32       2467.596       18278.29
## 4      22360.615       9616.301       42495.64       6403.571       20145.70
## 5      32012.945       7535.427     1492137.80      27549.479       17839.29
## 6       8855.116      10072.250       30864.30       4978.031       27679.47
## 7      16139.827      31457.898       37236.37      13784.179       23142.68
##   659.2057_3.452 275.0224_3.427 331.091_3.433 297.0036_3.423 336.0706_3.376
## 2       1011.924       1420.384      60085.22       1354.675      2559.7950
## 3       1295.666       7311.334      59490.22       1590.617      1734.8120
## 4       1025.241       1792.416      64656.66       1537.640      1323.7981
## 5        500.000       2959.763      46114.14       1095.457       500.0000
## 6       1459.686       2168.902      90255.98       1227.812       500.0225
## 7       1565.184       1959.251      85001.95       1731.376      1036.4287
##   361.1502_3.49 569.1751_3.441 338.0632_3.433 246.0383_3.487 321.0622_3.448
## 2      2958.115       6952.455      1654.4623       92775.07       29864.20
## 3     11504.693      11497.287       502.2117       75916.83       30422.84
## 4      5831.146       3894.294       500.2725       97662.73       31541.70
## 5      3116.306       1575.881       500.0000      113493.88       25448.34
## 6      5918.629       6497.292       500.0225       72250.68       30603.79
## 7      8466.972      18514.070       502.2908       59849.73       31963.03
##   636.1806_3.455 264.1168_3.46 611.1667_3.462 526.114_3.463 675.1598_3.47
## 2       6597.000      18984.12      11994.771      25346.26      1367.005
## 3       6171.389     209550.14      13618.314      22599.65      1885.297
## 4       3551.707      12719.38       8018.057      18018.14      1052.258
## 5       1692.240      11339.95       5001.151      17458.89      2040.139
## 6       3185.529      15336.21      11976.289      13655.16      1696.083
## 7       5005.007      34772.86      18729.188      18866.61      1665.976
##   759.1899_3.464 663.1291_3.465 473.0995_3.464 1115.3646_3.466 835.2891_3.466
## 2       6770.371      17872.627       26638.65        9007.860      30294.428
## 3      17925.996      25745.963       71092.49       14915.790      54536.950
## 4       3023.302       8960.390       11244.18        1858.087       9193.083
## 5       2437.424       5286.119        9080.14         500.000       3969.529
## 6       3502.183      10144.628       23421.84        2555.373      12742.841
## 7      17017.307      31538.523       57073.75       40242.094      93430.370
##   263.141_3.465 669.1453_3.465 565.1701_3.465 1121.3811_3.466 813.2953_3.466
## 2      91165.72       31356.99       8595.822        6712.300       6448.335
## 3     104570.13       34249.31      12769.933        9404.188      11707.745
## 4      26066.00       13491.70       3599.476        1444.898       2950.242
## 5      32622.40       10226.50       2471.274         500.000       1094.941
## 6      47276.62       18428.29       5163.568        1624.077       2361.416
## 7     129550.09       51002.49      19104.190       21716.146      24760.592
##   361.0713_3.465 829.2722_3.466 549.1965_3.467 971.2036_3.465 263.1046_3.466
## 2       27392.88      24744.951      202512.72       9367.938      2398278.2
## 3       32319.60      38729.402      262769.66      12603.446      3079720.0
## 4       14878.26       5787.452       80314.77       4049.789       984361.2
## 5       11316.18       5231.621       48212.84       2011.288       766227.8
## 6       15289.39       7975.654       92371.72       4322.829      1079254.1
## 7       38964.18      74986.220      437470.50      16567.967      4669233.0
##   383.053_3.466 527.2139_3.467 728.2422_3.466 949.2215_3.466 145.0619_3.467
## 2      86987.21      20327.654       8234.713       7274.354       64166.74
## 3     101857.53      35878.977      11448.226      12761.218       78737.68
## 4      64309.71       6010.072       4072.095       3739.259       33152.98
## 5      55675.14       4094.643       3181.435       1704.055       25409.91
## 6      69386.62       8192.310       2556.099       2641.255       33648.38
## 7     119541.63      57606.130      11523.113      22226.434      127784.88
##   744.2195_3.468 1030.3123_3.466 750.2363_3.468 480.1372_3.468 1257.2949_3.465
## 2      27855.553       12820.266      29474.230       1708.626        4634.305
## 3      34246.875       14998.200      30712.836       2180.960        4342.844
## 4      12259.015        3155.575      12023.797       2122.272        1329.293
## 5      10039.240        1941.837      10111.634       1813.109         500.000
## 6       7884.743        2729.789       9491.534       2119.340        1443.247
## 7      34506.367       16687.030      26660.223       3721.552        9309.012
##   674.1395_3.477 643.1894_3.473 230.9969_3.457 945.2595_3.469 464.1438_3.474
## 2       4456.714       8002.753       2387.211      14134.877      191703.73
## 3       7142.246       8498.534       5497.538      14474.374      181057.97
## 4       3665.454       4157.405       7491.002       5632.112      116001.09
## 5       2976.649       4629.730      37576.363       5843.373      117608.93
## 6       3044.648       2571.298       5612.942       2455.502       77506.01
## 7       5177.909       6552.012      16211.397      12756.392      162613.12
##   659.1667_3.474 665.1835_3.474 369.0829_3.476 388.047_3.472 178.0818_3.476
## 2       26325.25      28839.441       3680.285      23033.50       71185.55
## 3       26661.69      22829.762       5441.328      45957.41       67737.33
## 4       11779.77      16705.210       3148.841      16806.27       42114.69
## 5       16950.73      19587.285       5100.924      14923.62       58070.16
## 6        5978.77       6944.293       6644.089      15894.61       21287.21
## 7       19562.04      19230.838       7792.771      28514.15       48103.16
##   357.1107_3.472 692.1776_3.461 860.2066_3.476 134.0612_3.478 178.0515_3.479
## 2      14011.925       500.0201      10398.271       48428.38      1932230.2
## 3      13775.351       502.2117       8563.597       43549.18      1811344.0
## 4       6658.996      1036.9456       4538.203       32288.12      1065876.6
## 5      12946.002       500.0000       7695.449       44112.54      1492137.8
## 6       5244.056       500.0225       1632.339       19090.24       576666.1
## 7      10987.581       502.2908       4974.250       37712.89      1247351.6
##   558.136_3.478 441.0613_3.482 574.1139_3.482 236.0095_3.482 775.1556_3.475
## 2      5825.826      21828.865      18109.123       39066.01       5742.722
## 3      3876.069      15824.353      13169.588       37001.30       4708.571
## 4      2554.707      16511.370       8449.400       42179.59       2568.109
## 5      4499.181      23779.107      13967.390       49828.35       4879.240
## 6      1612.539       7390.145       2859.680       27509.89       1227.612
## 7      2306.604      10609.488       5463.686       25460.79       2693.243
##   580.1303_3.48 379.091_3.484 590.1068_3.469 607.1267_3.483 371.0978_3.481
## 2     18088.844     141366.02      1108.0483       1024.011       5079.835
## 3     15281.735     119121.75      1563.5682       1148.368       5834.833
## 4     11567.551      92462.88       500.2725       1131.444       7468.166
## 5     21576.766     158943.12      1351.7960       1201.111       2381.384
## 6      3191.261      39452.00       500.0225       1003.463       3133.870
## 7      6442.870      70578.82      1194.7349       1051.424       5505.605
##   437.0497_3.488 393.0776_3.464 298.0002_3.49 395.091_3.521 178.0526_3.481
## 2       8622.992       3256.770      47037.97      2911.512      1932230.2
## 3       7041.377       2940.252      42788.46      2672.569      1811344.0
## 4       8870.491       2948.692      43298.94      3203.764      1065876.6
## 5      11053.334       2463.968      59809.56      2305.755      1492137.8
## 6       4157.979       2987.531      29050.88      2508.193       576666.1
## 7       3944.371       3215.432      30930.81      5999.976      1247351.6
##   246.0383_3.488 299.0779_3.509 412.1044_3.523 640.1347_3.515 359.1345_3.504
## 2       92775.07       2514.067       1316.682      1059.8517       7766.533
## 3       75916.83       5905.496       1395.975       502.2117      10761.731
## 4       97662.73       4428.641       1712.978       500.2725       9616.301
## 5      113493.88       2112.329       1042.024       500.0000       7535.427
## 6       72250.68       3174.472       1563.050       500.0225      10072.250
## 7       59849.73       4038.055       1918.717       502.2908      31457.898
##   396.1297_3.506 242.0128_3.535 399.1658_3.513 432.1631_3.52 666.2108_3.475
## 2      1237.8220      15092.338      14871.461      500.0201      1416.0035
## 3      1081.2500       7215.185      29974.570     1380.7079      1618.9263
## 4       500.2725       4597.500       5545.925      500.2725      1036.3748
## 5       500.0000       3201.710      20128.006      500.0000       500.0000
## 6       500.0225       4437.150       7750.137     5089.0770       500.0225
## 7       502.2908       2932.089      14633.692      502.2908      1110.3527
##   251.0128_3.524 404.0405_3.511 279.0487_3.569 241.1189_3.536 150.0562_3.542
## 2       1514.078       1378.107      1180.4450       39766.30      1171.8206
## 3       1187.021       2491.653       502.2117       95559.96      1434.4391
## 4       1249.939       1597.454      1334.9155       77710.12       500.2725
## 5       2018.757       1505.133      1316.9280       11695.77      1310.9160
## 6       2546.018       1509.680      3898.3310       35093.35       500.0225
## 7       8027.596       2086.812      1216.1870       43619.86      2278.5050
##   287.0227_3.548 507.0806_3.582 565.0578_3.576 411.0792_3.55 489.2111_3.578
## 2      41345.473      1448.2427      1177.1458      1696.945       500.0201
## 3      15155.293       502.2117      1004.4235      1300.895      6157.4854
## 4      27982.443       500.2725      1231.4302      1417.074      1008.0990
## 5       3729.891       500.0000       500.0000      1033.423       500.0000
## 6       2974.843       500.0225       500.0225      1345.010       500.0225
## 7      70927.520       502.2908      1217.3944      1259.521       502.2908
##   337.1469_3.591 194.0459_3.542 913.214_3.531 338.0879_3.557 622.0984_3.522
## 2       500.0201       4766.757     1478.5022      23926.635       500.0201
## 3       502.2117       8600.862     1213.0704       6397.518       502.2117
## 4      1047.5446       6345.964      500.2725       2405.257       500.2725
## 5       500.0000       7711.624     1249.4290        500.000       500.0000
## 6      1246.6431      10094.892      500.0225       2597.229       500.0225
## 7       502.2908      18734.629      502.2908       2083.749       502.2908
##   559.0435_3.584 230.0128_3.569 331.0121_3.56 1141.2436_3.619 428.0976_3.601
## 2      1786.7450     126730.470      1126.191        500.0201       500.0201
## 3      1297.4121      38399.640      1699.872        502.2117       502.2117
## 4       500.2725       4776.578      1268.722        500.2725       500.2725
## 5      1050.1140       1810.725      1482.222        500.0000      1198.9210
## 6       500.0225       4558.343      3006.193        500.0225       500.0225
## 7       502.2908       7235.931      1488.005        502.2908       502.2908
##   461.0863_3.571 891.2154_3.643 364.0958_3.594 680.165_3.608 255.1349_3.614
## 2       1315.324       500.0201       500.0201      500.0201       22303.91
## 3       1294.743       502.2117       502.2117      502.2117       46002.72
## 4       1070.920       500.2725       500.2725      500.2725       36518.00
## 5       1135.873       500.0000       500.0000      500.0000        8328.17
## 6       1177.447       500.0225       500.0225      500.0225       21621.37
## 7       1189.293       502.2908      1071.6423      502.2908       11909.59
##   495.2229_3.594 571.1469_3.618 556.1624_3.635 525.0334_3.606 322.1105_3.605
## 2       500.0201       500.0201       500.0201     12501.2710       500.0201
## 3       502.2117      1323.5890       502.2117      7867.9565       502.2117
## 4      1286.0040      1080.4750       500.2725       500.2725       500.2725
## 5       500.0000       500.0000       500.0000       500.0000       500.0000
## 6       500.0225      1036.8142       500.0225      1096.4861      1731.0074
## 7      1106.2970      1189.7152      1236.0323      1140.3828       502.2908
##   393.0495_3.605 427.197_3.64 383.0464_3.601 295.1298_3.641 585.0184_3.643
## 2      17994.143     3006.554       1747.976      19796.130      1617.0715
## 3      11281.469     5215.837       2125.001       7887.587     15123.0410
## 4       1547.240     1750.565       2248.891       7556.402       500.2725
## 5       2493.144     2250.605       1350.122      16807.713      1344.9110
## 6       1083.014     2734.360       1515.976       7550.448      3683.7324
## 7       3176.760     3191.191       6360.287      25827.354      1398.2491
##   583.0211_3.647 609.0726_3.66 607.0749_3.657 611.069_3.647 250.0718_3.655
## 2      1251.8810      500.0201      1151.8369     1277.2717      20649.060
## 3     13226.6140     1189.5818      1275.2057      502.2117       5720.161
## 4       500.2725      500.2725       500.2725      500.2725      10667.295
## 5      1067.1320      500.0000       500.0000      500.0000      11148.359
## 6      4161.7770      500.0225       500.0225      500.0225      10379.870
## 7      1614.9852      502.2908      1095.3780     1317.0248       9006.942
##   379.1607_3.652 336.1323_3.647 819.2194_3.7 203.0017_3.661 279.049_3.659
## 2       16945.36       500.0201     500.0201       45271.33     1586.7673
## 3       24049.40       502.2117     502.2117      160459.33      502.2117
## 4       10625.89       500.2725     500.2725       54059.41     1353.7037
## 5       13827.35       500.0000     500.0000       71851.03     1221.4770
## 6       12091.85      4356.7935     500.0225       38877.69    11208.2470
## 7       40916.52      1095.0127     502.2908       44831.32     1226.9275
##   1303.2955_3.702 413.144_3.692 269.0163_3.668 1003.2656_3.716 222.0406_3.686
## 2        500.0201      1493.285       500.0201        500.0201       5729.833
## 3        502.2117      1677.730       502.2117        502.2117       4179.101
## 4        500.2725      1590.604       500.2725        500.2725       4495.761
## 5        500.0000      1199.070       500.0000        500.0000       6324.002
## 6        500.0225      1636.885      4438.7334        500.0225       4578.976
## 7        502.2908      2880.227      1152.2068        502.2908       6489.992
##   607.1628_3.711 302.1145_3.69 1069.2473_3.702 841.2146_3.693 194.0458_3.657
## 2       500.0201     91857.836        500.0201       500.0201       5241.928
## 3      1142.7068     28181.780        502.2117       502.2117       8256.830
## 4       500.2725     15895.030        500.2725       500.2725       8486.932
## 5       500.0000     25076.066        500.0000       500.0000       7414.563
## 6      1118.8005     18015.004        500.0225       500.0225      10004.294
## 7      1185.6836      8015.856        502.2908       502.2908      15292.333
##   835.1973_3.718 334.0517_3.708 638.0934_3.724 374.1587_3.706 295.0806_3.721
## 2       500.0201       500.0201       500.0201       500.0201       2551.527
## 3       502.2117       502.2117       502.2117       502.2117       1578.585
## 4       500.2725       500.2725       500.2725       500.2725       6792.646
## 5       500.0000       500.0000       500.0000       500.0000       1362.611
## 6       500.0225       500.0225       500.0225      1364.5600       1525.805
## 7       502.2908       502.2908       502.2908       502.2908       2028.173
##   432.1213_3.706 997.2507_3.723 569.1307_3.754 373.1141_3.685 246.0753_3.721
## 2      1086.0332       500.0201       1258.921       8083.200       8153.134
## 3       502.2117       502.2117       1486.820       8978.245       3739.386
## 4       500.2725       500.2725       1545.027       9669.385      13370.054
## 5       500.0000       500.0000        500.000       4972.398       5864.395
## 6       500.0225       500.0225       1154.325      41840.973       7869.123
## 7      1022.6482       502.2908       2706.123      18099.877       6733.293
##   443.0945_3.705 277.0353_3.723 785.1891_3.723 800.1466_3.728 471.0822_3.708
## 2       1024.464       1568.938       500.0201       500.0201       1299.667
## 3       1124.501       1134.814       502.2117       502.2117       1479.687
## 4       1109.620       1435.755       500.2725       500.2725       1441.315
## 5       1000.000       1656.028       500.0000       500.0000       1001.342
## 6       1027.078       2858.177       500.0225       500.0225       2482.244
## 7       1072.291       1298.394       502.2908       502.2908       1807.228
##   1159.3041_3.727 1279.2478_3.734 747.2354_3.721 883.1453_3.774 1165.3189_3.729
## 2        500.0201        500.0201       500.0201       500.0201        500.0201
## 3        502.2117        502.2117       502.2117       502.2117        502.2117
## 4        500.2725        500.2725       500.2725       500.2725        500.2725
## 5        500.0000        500.0000       500.0000       500.0000        500.0000
## 6        500.0225        500.0225       500.0225       500.0225        500.0225
## 7        502.2908        502.2908       502.2908       502.2908        502.2908
##   493.0631_3.69 769.2167_3.733 801.154_3.74 373.1514_3.715 439.1608_3.725
## 2      1971.857       500.0201     500.0201       1381.096       5220.843
## 3      1739.183       502.2117     502.2117       1860.411       5158.259
## 4      2370.022       500.2725     500.2725       1082.327       2868.059
## 5      1546.894       500.0000     500.0000       1389.819      10824.269
## 6      4162.458       500.0225     500.0225       2253.506       6877.070
## 7      3055.104       502.2908    1040.0641       2120.341       6261.796
##   259.129_3.733 607.1633_3.738 245.0489_3.748 209.0532_3.773 197.0471_3.745
## 2      7273.879       500.0201       1777.117       500.0201       500.0201
## 3      4108.916       502.2117       7832.062       502.2117       502.2117
## 4      3302.068       500.2725       2226.311      1227.0742       500.2725
## 5      2128.313       500.0000       5338.036      1355.7790       500.0000
## 6      2416.147      1118.8005       6897.765      7695.1580      5006.8410
## 7     33639.645      1211.9608       5880.084      1023.0393       502.2908
##   209.0455_3.749 583.1089_3.742 370.0981_3.747 431.1141_3.739 605.1484_3.739
## 2       500.0201       2004.865      17987.980      2087.0034       500.0201
## 3       502.2117       1863.595      18174.686      1372.4535       502.2117
## 4      1227.0742       1008.516      11760.441       500.2725       500.2725
## 5       500.0000       1235.126       5629.892      1137.0180       500.0000
## 6      7695.1580       2917.747      10777.829      1138.9178       500.0225
## 7      1188.3182       2553.231      28153.053      1179.0244      1004.5817
##   1003.2655_3.721 447.0928_3.777 889.161_3.783 197.0453_3.76 979.2122_3.736
## 2        500.0201       5817.318      500.0201      500.0201       500.0201
## 3        502.2117       2607.914     1028.1815      502.2117       502.2117
## 4        500.2725       1321.883      500.2725      500.2725       500.2725
## 5        500.0000       1646.469      500.0000      500.0000       500.0000
## 6        500.0225       1304.611      500.0225     5006.8410       500.0225
## 7        502.2908       1368.090      502.2908      502.2908       502.2908
##   593.1471_3.747 429.082_3.756 417.0951_3.717 109.0288_3.757 336.072_3.762
## 2       500.0201    69880.9400      1424.3392       500.0201      24309.22
## 3       502.2117    38860.0230      1077.8129       502.2117      18206.63
## 4       500.2725      500.2725       500.2725       500.2725      17938.76
## 5       500.0000     1068.7960       500.0000       500.0000      10814.51
## 6       500.0225     1000.0450       500.0225      2511.1543      12824.37
## 7      1070.0051      502.2908      1817.1829       502.2908      16711.30
##   639.0783_3.758 497.0695_3.785 370.0972_3.765 243.1344_3.787 279.0984_3.799
## 2      6891.4270      13639.467      10709.796       79573.85       1330.325
## 3      6559.9937       5731.856      18174.686       29120.03       3223.249
## 4       500.2725       1049.104      11760.441       72831.16       5079.844
## 5       500.0000        500.000       5629.892       13209.66       1466.146
## 6       500.0225       1066.250      10777.829       38053.12       1446.676
## 7       502.2908       1435.978      28153.053       17992.34       1575.172
##   1108.0095_3.804 585.0051_3.809 810.9784_3.814 816.9958_3.812 618.1838_3.802
## 2        44856.06       2189.381      2182.8752       2483.237       500.0201
## 3        58556.51      10752.095     19287.7400      21774.906       502.2117
## 4        45225.29       1067.443       500.2725       1575.506      1030.1608
## 5        43306.58        500.000       500.0000        500.000       500.0000
## 6        57640.11       1693.049      1708.6609       2472.715       500.0225
## 7        47952.07       5656.994      7793.5156      12349.923      1097.2543
##   633.1142_3.808 600.982_3.815 649.0893_3.836 655.1071_3.826 883.1412_3.819
## 2       500.0201      5734.712      1169.6640      1332.0315       500.0201
## 3       502.2117     37533.940       502.2117       502.2117       502.2117
## 4       500.2725      3115.715      1093.6445      1044.4434       500.2725
## 5       500.0000      1094.854       500.0000       500.0000       500.0000
## 6       500.0225      4487.034      1229.8688       500.0225       500.0225
## 7      1303.1267     19456.430      1350.6036      1026.3260       502.2908
##   606.9991_3.815 458.9733_3.815 412.977_3.815 399.0007_3.816 421.0558_3.818
## 2      12853.463      12328.325     15588.761       22371.06       1479.353
## 3      69780.420      37161.800     22942.070       47564.72       1171.312
## 4       4775.146       8345.383     11561.022       15273.72       1430.515
## 5       2633.967       4435.841      8146.525       10219.75       1229.504
## 6      11777.096      12020.802     15848.546       23609.78      12992.240
## 7      39775.266      21458.223     22016.260       39299.32       1292.766
##   625.0354_3.814 107.0502_3.816 397.0034_3.815 189.0027_3.815 306.9561_3.814
## 2      1024.6462       36762.26      198955.55      103996.80       34684.13
## 3      1007.0374       67776.02      467526.16      228851.75       47803.57
## 4       500.2725       21243.68      119134.77       72777.19       32122.13
## 5      1035.6040       17190.75       68001.51       55028.70       23527.71
## 6      2980.5059       32108.36      195411.72      106728.00       36639.86
## 7      1322.2114       50042.43      370974.90      167055.02       43562.57
##   187.0079_3.815 631.0532_3.815 124.0486_3.843 859.0857_3.824 459.093_3.801
## 2        2834762       500.0201       500.0201       500.0201     33601.520
## 3        5661702       502.2117       502.2117      1100.2384     19828.346
## 4        1783194       500.2725       500.2725       500.2725      1412.816
## 5        1285458      1042.2290       500.0000       500.0000      1224.051
## 6        2722107      2436.1067      3670.5625       500.0225      1185.442
## 7        4625648      1033.1272       502.2908       502.2908      1568.900
##   187.0387_3.806 108.0216_3.832 208.0615_3.836 230.9963_3.838 211.0613_3.866
## 2       95299.80       500.0201       2304.320       1002.712       4237.934
## 3      120844.62       502.2117       5911.168      13124.798       4617.028
## 4       68292.05       500.2725       3792.178      24363.030       6673.512
## 5       50560.73       500.0000       8967.401      77042.875       3417.560
## 6       99994.70      5548.4710       5751.253       2117.499      76985.880
## 7      127672.47       502.2908       5121.352      42761.004       5618.117
##   336.0719_3.763 212.0937_3.815 211.0971_3.846 187.0101_3.824 123.0452_3.87
## 2       24309.22       1598.594      1665.1260     2834762.50      1613.408
## 3       18206.63       1042.977       502.2117       28989.66      1807.685
## 4       17938.76       1875.553      1493.0270       37131.57      2024.484
## 5       10814.51       1206.836      1288.0490     1285457.80      1806.485
## 6       12824.37       1691.985      2621.9620     2722107.00     33680.566
## 7       16711.30       1140.214      2047.3496     4625648.50      1728.097
##   403.066_3.865 907.1941_3.871 673.1446_3.853 333.0066_3.893 476.0359_3.919
## 2      500.0201       500.0201       500.0201      17232.445       1494.551
## 3     3756.6787       502.2117      1089.0626      47056.836       1867.046
## 4      500.2725       500.2725       500.2725       1098.178       1778.471
## 5      500.0000       500.0000       500.0000       1530.248        500.000
## 6     1015.0013       500.0225       500.0225       2223.325       1605.403
## 7     6201.0117       502.2908      1034.3046       1572.059       1912.628
##   446.1142_3.879 679.1625_3.856 913.2118_3.895 461.0857_3.898 335.0215_3.886
## 2       500.0201       500.0201       500.0201      1110.2135      10626.485
## 3       502.2117       502.2117       502.2117       502.2117      12157.343
## 4       500.2725       500.2725       500.2725       500.2725       1012.259
## 5       500.0000       500.0000       500.0000       500.0000       1066.522
## 6      1101.0021       500.0225       500.0225      1463.9512       1071.433
## 7       502.2908       502.2908       502.2908      1278.7991       1256.354
##   295.0252_3.897 264.0876_3.875 657.1659_3.876 445.1072_3.893 217.0173_3.88
## 2       1162.778       17601.15       500.0201       1099.715     20278.488
## 3       1033.216       23898.58       502.2117       2238.278     33048.547
## 4       1106.029       10057.52       500.2725       1164.713      7707.624
## 5       1192.085        8180.38       500.0000        500.000     13451.042
## 6       2119.468       10463.48       500.0225       2895.344      6215.372
## 7       1432.736       37543.09      1183.1326       1339.432     10430.682
##   351.07_3.888 431.0979_3.907 751.1822_3.898 283.093_3.891 363.021_3.933
## 2    19412.940     63325.5740       500.0201     10465.223      6603.633
## 3    31765.062     17252.3400       502.2117     12388.627     35801.215
## 4    19264.607       500.2725       500.2725      7955.655      1812.111
## 5     6007.056       500.0000       500.0000      3184.073      1472.760
## 6    24174.450       500.0225       500.0225     10926.524      1213.808
## 7    39197.200      1388.0386       502.2908     17390.200      1470.421
##   283.0822_3.893 517.1331_3.892 745.1653_3.9 368.0804_3.895 513.0964_3.899
## 2       94270.93      1225.8290     500.0201       4963.215      1226.3809
## 3      162427.92       502.2117     502.2117      21955.592      1745.1395
## 4       74429.41       500.2725     500.2725      16235.867       500.2725
## 5       27075.12       500.0000     500.0000       4350.932      1058.6010
## 6      117184.59      3785.7686     500.0225      10719.087      1888.6066
## 7      224133.02      1204.0728     502.2908       7148.158      1687.0594
##   217.1081_3.912 372.1116_3.914 434.1396_3.922 432.1447_3.927 331.1218_3.932
## 2       16106.48      7557.4870       500.0201       500.0201       500.0201
## 3       16787.77      1222.4287       502.2117       502.2117      4598.1577
## 4       13261.09     35055.9100       500.2725       500.2725      1406.8314
## 5        9372.49     13287.3630      1115.3230       500.0000      1032.9810
## 6       22671.48       500.0225       500.0225      1660.1782       500.0225
## 7       15859.53      1118.2866      1079.3500      1137.2874      2514.8323
##   237.0359_3.933 279.0491_3.95 167.0349_3.921 350.088_3.952 584.1374_3.972
## 2       500.0201      1542.510      1112.2850      65342.47      1059.7166
## 3      1216.0801      1401.980       502.2117      94949.50       502.2117
## 4      1077.5962      1434.365      1655.5316      79700.31       500.2725
## 5      1132.0750      1422.325      1029.5210      11276.09       500.0000
## 6       500.0225     26237.771      1593.4023      24731.63      1866.1840
## 7      1188.8030      1348.465      1957.2369      28154.83      1459.4160
##   210.0419_3.959 396.1279_4.011 1122.0249_4.032 337.1446_4.025 614.1849_4.02
## 2       500.0201       500.0201      19439.8140       1616.411      500.0201
## 3       502.2117      1576.9596      27973.2340       1111.945      502.2117
## 4       500.2725       500.2725       1021.6447       1552.321      500.2725
## 5       500.0000       500.0000        500.0000        500.000      500.0000
## 6       500.0225       500.0225        500.0225       1285.737      500.0225
## 7       502.2908      1235.6437        502.2908       1302.736      502.2908
##   427.197_4.049 194.0491_4.031 662.1454_4.018 514.136_3.993 428.0955_4.037
## 2      3337.395       14809.88       500.0201      1812.840       500.0201
## 3      6070.519       20284.23       502.2117      3762.163      1061.6772
## 4      2754.905       17819.64       500.2725      2912.229       500.2725
## 5      3383.081       20059.43       500.0000      1272.891       500.0000
## 6      3190.086       27963.54       500.0225      1481.690      1196.3405
## 7      4479.489       47632.62       502.2908      1670.442       502.2908
##   150.056_4.032 656.1287_4.025 216.0277_4.034 194.0459_4.033 313.995_4.031
## 2      1134.012       500.0201       1784.063       14809.88      1360.275
## 3      1613.357       502.2117       1692.067       20284.23      2456.665
## 4      1438.176       500.2725       2174.269       17819.64      2465.706
## 5      1544.032       500.0000       2707.154       20059.43      1854.125
## 6      2385.166       500.0225       2134.502       27963.54      2813.499
## 7      3688.293       502.2908       4192.884       47632.62      4045.391
##   678.1113_4.032 411.0759_4.059 281.1142_4.039 429.0815_4.032 606.1191_4.053
## 2       500.0201       3425.755      12571.518     42738.9300      1031.2367
## 3       502.2117       3658.321      13000.793     33700.7800      1118.6216
## 4       500.2725       3619.039      14959.941       500.2725      1032.2228
## 5       500.0000       2601.438       7128.849       500.0000      1012.1950
## 6       500.0225       2628.296      11598.580      1191.8750       500.0225
## 7       502.2908       1806.507      11206.693      1244.0428       502.2908
##   433.0646_4.045 373.1139_4.04 495.223_4.067 255.1349_4.042 379.1607_4.047
## 2       6830.757     15089.266      1794.724       43546.05       30632.40
## 3       5472.275     14828.409      1200.680      115880.21       43233.90
## 4       1083.841     20148.734      1311.696       92772.07       17412.69
## 5        500.000      7662.456      1129.322       13672.81       20755.98
## 6       1128.617     15213.119      1113.566       43302.28       21854.06
## 7       1092.262     28159.100     13910.304       21668.38       80555.91
##   401.1434_4.052 184.0979_4.054 571.1476_4.081 201.0227_4.086 417.1173_4.046
## 2       8576.299       8380.165       500.0201     276003.060      1107.0532
## 3      10649.242      15776.373       502.2117     566404.600      1265.0997
## 4       4732.882       5861.940      1209.0028       2771.844       500.2725
## 5       5780.745      22387.355       500.0000       2410.425       500.0000
## 6       6853.776      10352.370       500.0225       2831.072      1369.1118
## 7      18687.470      10717.224      1363.8920       2442.787      1511.8750
##   351.1236_4.04 562.1922_4.035 397.1911_4.067 367.2236_4.071 447.0921_4.067
## 2     1080.4198       500.0201       500.0201       18045.54       8853.170
## 3      502.2117      1210.4100       502.2117       25799.00       9127.329
## 4     1200.1506      1155.6400       500.2725       18495.12       1358.094
## 5      500.0000       500.0000       500.0000       10054.54      16708.617
## 6     1494.5300       500.0225       500.0225       21946.88       5332.641
## 7     1529.7859      1544.2903       502.2908       30512.05       6793.316
##   375.1294_4.074 181.0507_4.062 297.0975_4.072 489.2123_4.076 201.0227_4.09
## 2       9512.906       500.0201     118699.695       500.0201    276003.060
## 3       8880.499       502.2117      97780.750     12474.1380    566404.600
## 4      12815.970      1146.7318       1337.311      1802.8375      2771.844
## 5      10566.450      1582.5880       1780.940       500.0000      2410.425
## 6      11239.810      9212.3840       1384.641       500.0225      2831.072
## 7      19962.280      2154.8665       2276.986      1123.0166      2442.787
##   765.197_4.127 365.0863_4.095 680.2306_4.136 151.04_4.082 853.2516_4.121
## 2     1007.2653      23400.213       500.0201     2087.742       500.0201
## 3      502.2117      20392.602       502.2117     5241.445       502.2117
## 4      500.2725       1099.246       500.2725     5335.681       500.2725
## 5      500.0000       1189.499       500.0000     2476.194       500.0000
## 6      500.0225       1167.147       500.0225     2929.061       500.0225
## 7     1107.9886       1638.791       502.2908     2539.698      1379.6024
##   165.0557_4.102 204.0666_4.129 681.2357_4.115 247.0798_4.12 908.2639_4.165
## 2      15463.088      16845.307      1350.4375      1013.452       500.0201
## 3      14762.573       5050.506       502.2117      1824.505       502.2117
## 4       6505.936       9398.247       500.2725      2595.512       500.2725
## 5       5094.479       6261.242       500.0000      5533.848       500.0000
## 6       6902.454       7298.995       500.0225      1768.244       500.0225
## 7      81986.080       8835.773       502.2908      5627.492       502.2908
##   185.0819_4.129 246.0752_4.139 531.1447_4.141 497.2379_4.163 1122.0248_4.125
## 2       31914.40       9816.386       1195.221       1588.184      18176.4900
## 3       31678.77       5029.870       1455.278       1170.089      31517.2850
## 4       39332.91      15328.499       1152.678       1633.145        500.2725
## 5       20293.20       6565.389       1076.325       1250.345        500.0000
## 6       43057.23       9835.374       1312.184       1418.890        500.0225
## 7       54471.06       8589.885       1625.801       3376.248        502.2908
##   845.2477_4.186 363.1658_4.172 418.1327_4.164 565.0619_4.188 569.1299_4.178
## 2       500.0201       7593.479       500.0201      1276.8286      1245.6401
## 3       502.2117       9047.312       502.2117      2187.6565      1562.2822
## 4       500.2725      12075.439       500.2725       500.2725       500.2725
## 5       500.0000      11406.414       500.0000       500.0000      1309.7360
## 6      1145.1302      38251.996       500.0225      3525.0964      1004.5967
## 7      1203.7396      78509.090       502.2908      1854.6865      1456.9252
##   245.0488_4.187 675.1511_4.19 691.3179_4.171 813.255_4.198 345.1933_4.201
## 2       3896.805      500.0201       1084.600      500.0201       1314.321
## 3       4913.752     1018.6769       1226.086      502.2117       1571.962
## 4       3427.643      500.2725       1213.078      500.2725       1963.884
## 5      13658.554      500.0000       1055.245      500.0000       1145.560
## 6      26215.668      500.0225       1061.545      500.0225       2622.921
## 7      20793.863      502.2908      13143.588     1297.0577      19960.688
##   1041.2898_4.199 579.2066_4.211 714.3024_4.193 710.0906_4.208 461.0817_4.193
## 2        500.0201      1096.4995       500.0201       500.0201      1559.1384
## 3        502.2117       502.2117       502.2117       502.2117       502.2117
## 4        500.2725      1189.3319       500.2725       500.2725      1018.1447
## 5        500.0000       500.0000       500.0000       500.0000      1307.6060
## 6        500.0225      4442.6600       500.0225       500.0225      1383.2630
## 7        502.2908      1456.6451      8200.0220       502.2908      1259.8547
##   285.0968_4.206 211.0967_4.185 431.1146_4.185 913.2113_4.211 485.0499_4.198
## 2       1591.004       2141.010       1492.357       500.0201       500.0201
## 3       1198.283       1366.050       2108.565       502.2117      1066.2404
## 4       1347.896       1686.096       1187.821       500.2725       500.2725
## 5       1243.912       1193.337        500.000       500.0000       500.0000
## 6       2118.441       6931.248       1646.158       500.0225      1221.0613
## 7       1457.149       1860.470       2051.848       502.2908      1110.7401
##   807.2393_4.206 413.1426_4.219 137.0244_4.225 891.2172_4.205 1141.2441_4.201
## 2       500.0201       2777.509       1388.574       500.0201        500.0201
## 3       502.2117      14651.119       1873.621       502.2117        502.2117
## 4       500.2725       7951.314       1760.398       500.2725        500.2725
## 5       500.0000       4579.056       2756.803       500.0000        500.0000
## 6       500.0225      13593.566       3097.170       500.0225        500.0225
## 7      1009.4717      72335.586       4428.384       502.2908        502.2908
##   673.1455_4.198 476.0415_4.203 465.0845_4.208 123.0452_4.211 445.1115_4.233
## 2       500.0201       500.0201       1415.134       2133.562       1439.395
## 3       502.2117      1049.3372       2255.649       1047.725       2993.442
## 4       500.2725       500.2725       1904.991       2364.568       1467.602
## 5       500.0000       500.0000       1205.233       1380.799       1369.613
## 6       500.0225       500.0225       2061.030      97200.336      14130.642
## 7       502.2908       502.2908       6454.032       1342.152       2321.446
##   212.0968_4.21 108.0218_4.217 907.1956_4.201 679.1604_4.197 892.2207_4.211
## 2      500.0201       500.0201       500.0201       1211.000       500.0201
## 3      502.2117       502.2117       502.2117       1610.286       502.2117
## 4      500.2725       500.2725       500.2725       1168.610      1006.4688
## 5      500.0000       500.0000       500.0000        500.000       500.0000
## 6     1060.3683     15684.2350       500.0225       1703.815       500.0225
## 7      502.2908       502.2908       502.2908       1724.758       502.2908
##   689.1166_4.213 488.0429_4.206 657.1681_4.216 815.077_4.202 1135.2278_4.215
## 2       500.0201       500.0201      1088.0382      500.0201        500.0201
## 3      1767.0101       502.2117       502.2117      502.2117        502.2117
## 4       500.2725       500.2725       500.2725      500.2725        500.2725
## 5       500.0000       500.0000       500.0000      500.0000        500.0000
## 6       500.0225       500.0225       500.0225      500.0225        500.0225
## 7       502.2908       502.2908       502.2908      502.2908        502.2908
##   447.092_4.187 559.0453_4.234 347.1678_4.233 361.1501_4.225 1132.0633_4.207
## 2     14209.750       500.0201       1978.942       18063.72        500.0201
## 3      6538.014       502.2117       4885.007       48543.94        502.2117
## 4      1221.749       500.2725       6896.696       13687.78        500.2725
## 5      9892.394      1210.5060       4696.693       12739.07        500.0000
## 6      3765.201      2102.8110       5900.621       17000.66       2203.8574
## 7      4402.091      1061.7600      20057.316       31987.84        502.2908
##   439.1607_4.307 466.0888_4.204 401.1094_4.24 503.2011_4.23 211.0615_4.235
## 2       35630.74       1155.831      1356.311      500.0201       9299.780
## 3       23377.72       1212.071      1017.250      502.2117       5661.752
## 4       32249.98       1130.323      1140.907     1004.0062      14144.817
## 5       23424.88        500.000      1192.040      500.0000       6879.601
## 6       20375.06       1008.788     12783.143     2787.1323     222310.810
## 7       48064.66       2062.616      1082.377     1340.5103      11281.446
##   295.0815_4.242 363.0692_4.266 269.1506_4.275 481.0163_4.286 361.0666_4.291
## 2       5294.975       1719.503       55917.74       500.0201       500.0201
## 3       1994.145       1519.192       56339.68      1070.1798       502.2117
## 4      12367.124       3087.034      106905.86      1194.2478      1052.2242
## 5       1849.375       1509.568       61634.27      1139.4370      1005.2570
## 6       1354.144       1696.741       65104.31       500.0225      1268.7782
## 7       2633.776       2583.050       97614.09      1564.8662      1169.2520
##   459.0361_4.296 745.1266_4.269 429.0571_4.306 265.1192_4.316 449.1074_4.301
## 2       1225.607       500.0201       500.0201       13066.91      5779.1270
## 3       1258.092       502.2117       502.2117       15573.86      4929.6520
## 4       1099.779       500.2725       500.2725       22505.95      1634.0016
## 5       1185.275       500.0000      1181.8360       18379.25      1670.1820
## 6       1223.404       500.0225       500.0225       14431.56       500.0225
## 7       1103.347       502.2908      1193.2788       30736.55      1889.6991
##   199.0068_4.328 333.0047_4.33 459.1504_4.33 492.1884_4.319 252.0891_4.335
## 2      22453.934     40354.176      27175.84       500.0201       500.0201
## 3      32792.887    159986.280      16161.56       502.2117       502.2117
## 4     123501.590      1782.307       9640.47       500.2725       500.2725
## 5      44842.332      1665.914      11853.27       500.0000       500.0000
## 6       7873.260      2017.997      13427.35       500.0225       500.0225
## 7       9935.031      2137.633      11292.57       502.2908       502.2908
##   572.2528_4.339 197.0819_4.344 363.1657_4.345 359.1344_4.351 229.017_4.354
## 2      17158.768       27600.63      13217.099       2929.514      3282.877
## 3       5759.800       18742.19       6192.381      10011.053     25208.588
## 4       4977.178       37192.69      10307.217       4351.089     10712.559
## 5       4262.561       16994.82       3932.929       1805.749     12468.570
## 6      12581.195       42092.09      12115.064       3142.570     16434.314
## 7      13409.015       47107.39       9359.776      20665.857     16348.319
##   385.1685_4.355 295.0242_4.354 335.0244_4.36 640.3332_4.371 243.0329_4.371
## 2      27485.650       1037.856     30748.283       5514.133       2071.189
## 3       5134.586       1361.541     44077.810       6525.265       9016.120
## 4      22228.174       1694.041      1166.777       7909.386       4185.294
## 5      12024.319       1146.532      1948.247       6326.681       6490.809
## 6      41181.690       1123.145      1594.863       2940.448       5720.709
## 7      20923.797       1223.440      1316.059      12598.622       7917.560
##   446.1831_4.341 425.145_4.374 514.1681_4.367 343.0855_4.396 495.1174_4.369
## 2       1560.262     14722.687       500.0201       8483.258       3014.250
## 3       1121.181      4872.185       502.2117      28780.348       1872.900
## 4       1361.348      9586.896      1026.9316       8179.717       1532.400
## 5        500.000     11847.822       500.0000      24581.084       1267.245
## 6       8808.360      8369.748      2427.3208       5976.216       1544.000
## 7       1294.736     13045.540      1197.7728      12347.563       3046.042
##   217.0172_4.4 397.1895_4.429 533.1257_4.426 527.1086_4.425 455.1062_4.407
## 2    58557.633       500.0201      1439.5072       1117.903      1394.1925
## 3    47241.530       502.2117      1081.0302       1266.921      3071.6780
## 4     4373.019      1564.3976       500.2725       1091.927       500.2725
## 5     8832.745       500.0000      1340.5690        500.000       500.0000
## 6     3322.810      1122.5442      1077.5782       1105.840       500.0225
## 7    12286.225      1581.0319      1646.5192       1971.332      1037.0580
##   363.0234_4.453 517.0977_4.399 465.1366_4.417 397.1496_4.415 817.2886_4.438
## 2      14996.744      1303.6475      1261.2980       1728.568       500.0201
## 3      88644.150       502.2117      1157.9459       1439.837       502.2117
## 4       9155.059      1515.7781       500.2725       1454.498       500.2725
## 5       4044.874       500.0000       500.0000       1406.541       500.0000
## 6       3701.562      1636.8439      1123.7861       2502.454       500.0225
## 7       4041.289      1484.1147      2097.8298       3281.939      1516.2362
##   485.1661_4.43 361.0646_4.442 363.0701_4.451 429.0565_4.442 459.0924_4.452
## 2      28476.84       500.0201       1267.282      1903.0104      1083.5731
## 3      25053.10       502.2117       2514.663       502.2117      1466.3830
## 4      33872.00       500.2725       1640.809      1088.0776       500.2725
## 5      18330.00      1200.1620       1702.103       500.0000      1342.4900
## 6      21684.74      1011.9418       1719.399       500.0225      1197.8843
## 7      16546.48      1386.5675       1816.765       502.2908      1592.6484
##   391.0993_4.492 445.0782_4.484 396.1124_4.459 427.1588_4.465 405.1764_4.467
## 2       2134.001      36958.086       3297.005       18692.27       75606.05
## 3       1858.502       9651.558       8763.882       27626.54      105838.61
## 4       2473.137       1310.511       3563.590       10963.88       36379.30
## 5       1274.227       1040.282       2283.335       13559.53       50422.45
## 6       2064.223       1429.537       8070.898       13868.08       46699.69
## 7       1378.028       3928.955      10723.871       28537.16      130460.76
##   565.1557_4.485 243.0779_4.486 245.0937_4.487 417.1192_4.5 509.0959_4.5
## 2       1897.167       98969.26      34343.207     500.0201     1274.533
## 3       1021.917       52586.68       8035.021     502.2117     1197.657
## 4       1644.339       45230.14       6770.942     500.2725     1364.642
## 5       1152.575       43097.77      10609.345     500.0000     1022.691
## 6       7180.364       21415.42       5492.720    1072.8165     1218.374
## 7       1630.761       39697.03       7075.240    1442.2354     1625.541
##   212.0065_4.503 580.1557_4.511 297.1062_4.504 365.0866_4.514 297.0975_4.498
## 2       500.0201       500.0201     18571.6330      46667.790     265259.060
## 3      1022.4869       502.2117     17202.4800      35284.950     211687.700
## 4       500.2725       500.2725       500.2725       1740.001       1403.205
## 5       500.0000       500.0000       500.0000       1288.222       1367.149
## 6       500.0225       500.0225      1220.2224       1295.263       1423.828
## 7      1486.0110       502.2908      1410.9357       2355.257       2220.741
##   617.1836_4.515 501.1339_4.505 447.0919_4.504 181.0503_4.495 795.2377_4.518
## 2      6491.5957      1356.5575      12255.377      1029.6250       500.0201
## 3      4387.0020      1064.6024      12365.822       502.2117      1082.4540
## 4       500.2725       500.2725       1192.028       500.2725       500.2725
## 5      1129.4430      1015.4450      26084.623      1111.1550       500.0000
## 6      1008.0633      1118.3269       6507.131     15393.7630       500.0225
## 7      1075.1255      2011.5920       8644.871      1972.9110       502.2908
##   801.2549_4.519 549.1948_4.514 443.1248_4.497 345.1938_4.506 521.1082_4.508
## 2       500.0201      1080.6757       1314.985       1267.348      10740.661
## 3      4069.1458      1090.1663       4971.608       1438.247      13150.938
## 4       500.2725      1070.9548       1884.193       2342.148       1017.529
## 5       500.0000       500.0000       1631.061       1537.169       1401.632
## 6       500.0225      1173.4874       3531.442       2251.911       1400.605
## 7       502.2908       502.2908      17172.127      32250.795       1293.225
##   411.1279_4.49 411.1654_4.559 714.3028_4.511 692.32_4.516 833.2468_4.513
## 2      3198.321       2218.742       500.0201     500.0201       500.0201
## 3      1807.538       1645.820       502.2117     502.2117      1170.9766
## 4      1960.152       2130.835       500.2725     500.2725       500.2725
## 5      1357.588       3635.758       500.0000     500.0000       500.0000
## 6      2660.600       2767.225       500.0225     500.0225       500.0225
## 7      2799.556       5365.726     16415.5300   13039.1040      8833.0330
##   481.1298_4.503 713.2993_4.51 465.1045_4.511 475.1137_4.509 403.1133_4.514
## 2       1835.278      500.0201       1859.053       1847.537       1518.123
## 3       7389.533     2150.7368      11710.796       7959.361       6069.457
## 4       3776.654     1023.2011       5262.328       3925.934       3340.619
## 5       3245.185      500.0000       2839.534       1782.431       2240.783
## 6       6306.434     1622.5605       7581.456       4740.910       6226.267
## 7      28111.535    44106.5740      51713.290      23622.370      32393.154
##   691.3175_4.507 345.1554_4.506 779.2721_4.515 433.1136_4.519 792.3445_4.502
## 2       500.0201       20852.30      1000.0402      36876.105       500.0201
## 3      1424.4734      147361.27       502.2117     130782.100       502.2117
## 4       500.2725       63373.27       500.2725       1524.914       500.2725
## 5       500.0000       28485.64       500.0000       1178.540       500.0000
## 6      1198.5745      105147.38      1074.5065       2467.608       500.0225
## 7     34889.7770      779903.90       502.2908       5195.467       502.2908
##   413.1426_4.51 544.1472_4.514 345.1556_4.509 446.1795_4.499 814.3239_4.509
## 2      3822.189      1002.5149       20852.30       1210.685       500.0201
## 3     22333.023       502.2117      147361.27       1340.847       502.2117
## 4     12796.617       500.2725       63373.27       1146.634       500.2725
## 5      5930.739       500.0000       28485.64        500.000       500.0000
## 6     19394.152      1094.1141      105147.38       9838.250       500.0225
## 7    108875.230       502.2908       41562.10       1084.796       502.2908
##   572.2105_4.512 491.191_4.507 514.1698_4.543 341.1234_4.519 531.0773_4.532
## 2       500.0201      500.0201      1124.3052       3259.073       4715.769
## 3       502.2117      502.2117       502.2117       1429.310      12150.315
## 4       500.2725      500.2725       500.2725       1860.293       1904.449
## 5       500.0000      500.0000       500.0000       2248.730       1446.962
## 6       500.0225      500.0225      2525.5530      12178.781       1547.482
## 7      2657.9800     1205.8857       502.2908      22193.355       1471.421
##   389.0919_4.531 541.2651_4.526 385.1861_4.524 204.0666_4.532 272.0538_4.533
## 2       30853.84       49211.22       8278.135      56397.742      11972.399
## 3       24835.94       33827.01       9187.460       5907.105       1354.588
## 4       30947.13       41123.15       3388.366      31545.168       7493.142
## 5       21487.71       26071.28      13857.561      20137.030       4345.635
## 6       24255.96       45082.98       8629.143      22654.207       4862.695
## 7       11179.16       19061.70       9608.062      21858.170       5151.452
##   224.062_4.537 383.1529_4.559 425.0363_4.553 201.0228_4.555 203.0172_4.555
## 2     21967.370      27211.695      40519.293    1109838.100     49373.6520
## 3      5963.214       6209.749     163893.190    2740269.200    107369.7000
## 4     17189.030      17199.498       1391.366       8847.902       500.2725
## 5      9347.290       9585.461        500.000       4505.520      1247.9530
## 6     20445.396      34320.620       1161.300       8279.492      1348.0198
## 7     11412.685      10278.622       1670.541       4023.033      1271.0688
##   1122.0244_4.55 493.1666_4.573 366.0851_4.55 269.1614_4.571 270.1538_4.572
## 2     38332.2420       8883.677    11007.1720       12831.29       24905.38
## 3     48068.5940      12363.511     8576.7040       11171.72       20781.96
## 4      1629.8573       1725.057      500.2725       23895.34       48914.48
## 5      1559.2230       1870.743     1732.6070       13119.94       26293.60
## 6      1102.7025       2252.508      500.0225       10984.53       29178.05
## 7       502.2908       2590.352     4142.9850       18660.11       37244.04
##   269.1505_4.575 389.0981_4.564 561.29_4.571 151.04_4.576 536.1898_4.583
## 2       168327.2      11812.046     1980.800     1379.485       500.0201
## 3       131175.2       8569.879     1417.046     7649.901       502.2117
## 4       304923.7      22971.705     8845.783    12576.146       500.2725
## 5       166453.5      10959.376     2650.157     2479.001       500.0000
## 6       170655.0      11111.521     2065.576     3811.464      1092.3750
## 7       211573.1      12799.598     3872.688     3606.068       502.2908
##   355.1037_4.621 238.0776_4.607 507.2078_4.607 237.1243_4.614 550.2061_4.628
## 2       1749.600      11613.255       1238.812       6867.794      1039.6333
## 3       3452.048       3164.504       4206.136      18515.762       502.2117
## 4       2007.564      17256.932       5436.716      19349.865       500.2725
## 5       1279.937       8977.313       4871.195      25809.947       500.0000
## 6       5165.513      14343.507      11767.072      10065.170       500.0225
## 7      13623.087       7438.664       5104.551      45283.125       502.2908
##   482.2186_4.626 602.1667_4.638 618.1913_4.649 400.1429_4.669 440.1641_4.66
## 2       500.0201       500.0201      1001.4805       4314.131      22935.53
## 3       502.2117       502.2117       502.2117       5263.606      14449.48
## 4       500.2725       500.2725       500.2725       3461.448      18276.03
## 5       500.0000       500.0000       500.0000       2466.310      12178.72
## 6       500.0225       500.0225       500.0225       1867.316      12900.19
## 7      1340.7145       502.2908       502.2908       4643.139      31328.14
##   461.1426_4.66 439.1608_4.66 539.2494_4.677 477.1039_4.686 245.0485_4.677
## 2      22342.83      84061.96       52808.73      1336.4696      13326.772
## 3      13347.72      47145.14       41944.20      1394.1194       1610.615
## 4      18871.06      70785.08       45355.29       500.2725       6064.749
## 5      14962.76      50771.34       27440.58       500.0000      40403.617
## 6      13647.03      49392.33       38826.91      1266.9812      59262.850
## 7      29214.35     127771.74       16958.50      1292.3481      52591.430
##   395.1144_4.677 354.1007_4.717 473.1448_4.73 600.2843_4.732 339.1082_4.74
## 2       500.0201       3306.901     27960.912       81664.01      4630.577
## 3       502.2117      12077.505      2878.747       25238.91      3142.159
## 4      1031.8560       3519.626     10558.711       28730.54      5125.011
## 5       500.0000       2596.864      4601.004       32069.04      5948.137
## 6       500.0225       2501.928      1864.766       50578.04      5521.898
## 7      1044.7402      14006.885     17641.162       34181.21     16994.557
##   305.0561_4.737 690.3154_4.751 243.1236_4.74 175.0975_4.743 343.0855_4.765
## 2       500.0201      1196.3077      16059.15       500.0201       18579.60
## 3      1489.6871      6130.7104      12399.77      1557.9905       75148.27
## 4      1089.7163      5252.0000      18358.46      1878.2666       20522.63
## 5      1152.1880       500.0000      11756.49       500.0000       56479.83
## 6       500.0225       500.0225      20118.56      1349.3058       16951.32
## 7      1038.4114      5154.5100      56901.96      1206.2797       27130.47
##   220.0979_4.733 415.0625_4.788 347.0774_4.782 171.0487_4.824 541.2651_4.807
## 2      1638.4552      1021.1602       500.0201       500.0201      122914.78
## 3      1724.1215       502.2117      1041.0525       502.2117       75771.56
## 4      1005.2814       500.2725       500.2725       500.2725       88029.50
## 5       500.0000       500.0000       500.0000       500.0000       53759.32
## 6       500.0225      1044.3330       500.0225       500.0225       95655.71
## 7      1865.9061       502.2908      1173.3026       502.2908       38066.96
##   137.0243_4.815 495.2227_4.812 517.2049_4.804 565.1563_4.799 366.1016_4.846
## 2       1662.068      11146.928      2882.8188       2647.606       3199.090
## 3       3193.011       1366.409       502.2117       1756.952      23928.941
## 4       2641.717       2352.657       500.2725       1647.281       5646.136
## 5       5506.447       1095.126       500.0000       1374.983       7875.066
## 6       4906.688       1566.543       500.0225      17029.764       5112.749
## 7       8481.083      66939.670     17211.6200       1484.852       5723.152
##   411.2021_4.884 383.153_4.885 507.2079_4.889 433.113_4.886 553.0631_4.891
## 2       11232.75      70643.29       1886.963   102240.2200      9312.3955
## 3       17214.39      10736.60       7853.381   329724.4400     32912.5430
## 4       14588.95      29128.12      11057.503      500.2725       500.2725
## 5       15264.83      15596.14       5999.206      500.0000       500.0000
## 6       18982.31      71164.58      17203.416     1123.0288       500.0225
## 7       34991.22      16922.43       6678.316     1115.3750      1093.7258
##   427.1967_4.894 448.1966_4.911 541.265_4.928 493.228_4.95 357.1009_4.96
## 2       3329.276       500.0201     106122.69     1161.597     12913.057
## 3       3412.567       502.2117      86854.49     2668.999      9450.572
## 4       2824.127       500.2725     123232.44     4901.623     10193.088
## 5       3092.959       500.0000      50948.10     2959.201      5238.429
## 6       3632.721       500.0225      84515.42     4996.156      4483.346
## 7      10620.657      1370.2866      37987.12     2811.050     11063.640
##   433.2077_4.995 462.1766_4.998 407.0405_4.991 591.3184_5.021 294.149_5.025
## 2       50237.28       20843.97       1233.016      4959.5977      500.0201
## 3       65668.17       40955.99       1171.720      1760.4808      502.2117
## 4       23353.03       42852.52       1328.654       500.2725      500.2725
## 5       39260.46       14111.68        500.000      5026.2870      500.0000
## 6       34034.77       30898.18       1194.664      1887.0361      500.0225
## 7      136370.02       26898.54       1237.925     10924.7770      502.2908
##   442.1246_5.012 199.0975_5.017 198.1135_5.021 436.1064_5.004 403.1019_5.042
## 2       500.0201       31569.98       20392.40       500.0201      17884.021
## 3       502.2117       43998.17       24181.24       502.2117       1201.343
## 4       500.2725       28701.64       22313.44       500.2725       1341.471
## 5       500.0000       23920.47       31832.01       500.0000       1294.283
## 6       500.0225       45910.37       35357.32       500.0225      60392.465
## 7      1045.8989       75289.93       46829.72       502.2908       7142.374
##   374.1378_5.008 236.1018_5.033 354.1009_5.03 589.3024_5.037 253.0503_5.048
## 2       500.0201       500.0201     12059.978      1183.0342     87628.7900
## 3       502.2117       502.2117     38183.977       502.2117      9273.5380
## 4       500.2725       500.2725      9882.305       500.2725       500.2725
## 5       500.0000      1208.2830      8366.475     11970.8240       500.0000
## 6       500.0225      1103.7936      7548.289      5399.0730       500.0225
## 7       502.2908      1434.4534     49713.695     12103.9480       502.2908
##   593.3333_5.048 539.1147_5.072 377.1019_5.09 255.0674_5.078 509.2751_5.084
## 2     20812.2970       500.0201     1027.2092     25627.5120      12026.244
## 3       502.2117      1068.5839     1151.8346      2107.4490       8152.416
## 4       500.2725      1030.7670      500.2725       500.2725      16909.273
## 5       500.0000      1290.2890      500.0000       500.0000      11089.767
## 6      1264.2401      3301.1820     1162.5295      1099.6250       8110.630
## 7      2037.0231      1504.2439     2033.6578      1006.4058      10047.322
##   525.27_5.101 387.1658_5.117 544.2886_5.154 366.1015_5.18 221.1178_5.185
## 2    19517.926       22937.21      1040.8656      8198.072       500.0201
## 3    14197.836       20481.35      1061.0623     72130.984       502.2117
## 4    16485.213       41533.52       500.2725     19640.703       500.2725
## 5     5771.371       22260.06       500.0000     25038.250       500.0000
## 6    12939.461       23806.90      1118.5981     19572.678      1199.3672
## 7     7958.508       53824.02       502.2908     19473.297       502.2908
##   177.1283_5.202 213.1132_5.201 511.2544_5.206 502.1148_5.219 352.0859_5.224
## 2       500.0201       24307.09       5852.871       500.0201       112688.7
## 3       502.2117       33047.15       3714.066       502.2117       458347.9
## 4       500.2725       34331.59      11037.714       500.2725       262000.7
## 5       500.0000       23485.19       4631.938       500.0000       100043.3
## 6       500.0225       60858.36       4175.990       500.0225       208584.7
## 7       502.2908       31735.41       5967.039       502.2908       182137.0
##   218.0821_5.22 317.1602_5.227 385.1498_5.181 235.0957_5.223 492.1871_5.243
## 2      1588.379       2098.528       3198.562       5796.480       500.0201
## 3     17984.600       1498.562       2005.385       6726.168       502.2117
## 4      4179.013       1280.783       3541.440       7509.884      1018.1037
## 5      2000.520       1878.778       2268.223       5944.811       500.0000
## 6      4259.646      53313.613      12095.850      13241.854       500.0225
## 7     21668.537       3814.289       4596.590       6477.691       502.2908
##   283.1657_5.239 481.2439_5.242 549.2312_5.243 493.1858_5.275 601.2255_5.243
## 2      15629.707       96519.69      17937.154      1343.4958       1291.320
## 3      14522.388       46078.28      11311.921      1473.6250       1708.315
## 4      18881.834       92854.02      17842.053       500.2725       1841.151
## 5       4988.767       46593.10      11252.220      1008.9090        500.000
## 6      16454.770       47444.93       7793.190      1020.0914       1166.777
## 7       5726.347       23718.97       5081.666      1117.0500       1741.182
##   651.3856_5.28 537.1508_5.278 191.1105_5.283 223.0969_5.259 509.1453_5.277
## 2      2426.274      1347.7834      2221.5210       3237.114      1021.5819
## 3     22397.574      1166.1658       502.2117       3351.843      1093.4860
## 4      2509.852       500.2725       500.2725       3574.743      1220.8693
## 5     11791.816      1281.8350       500.0000       3418.265       500.0000
## 6      5622.452      1298.5032      2148.1370       5141.163       500.0225
## 7      2543.095      1387.5708      1963.0996       5629.794      1069.8583
##   257.0801_5.284 73.0294_5.277 471.199_5.262 515.1648_5.296 355.0445_5.237
## 2      1097.2024      500.0201      500.0201      1029.4464       1697.070
## 3       502.2117     1118.5565      502.2117      1324.2821       2313.245
## 4       500.2725      500.2725      500.2725       500.2725       2196.776
## 5       500.0000      500.0000      500.0000       500.0000       1403.233
## 6      1577.2256     1048.8716     1329.5245       500.0225       4114.302
## 7      1487.7784      502.2908     1528.0974      1205.0000       1984.349
##   191.1076_5.282 433.2076_5.283 223.0982_5.267 531.1311_5.287 536.3209_5.3
## 2      2221.5210       19980.69       2078.336       500.0201     500.0201
## 3       502.2117       22105.52       3351.843       502.2117     502.2117
## 4       500.2725       15200.38       1130.048      1148.1954     500.2725
## 5       500.0000       13286.03       3203.035      1093.4570     500.0000
## 6      2148.1370       14589.48       3403.362      1173.9519     500.0225
## 7      1999.8200       27991.63       4707.564      1293.5547     502.2908
##   389.1814_5.311 442.19_5.313 325.1288_5.321 369.1737_5.331 344.143_5.362
## 2       12947.35    13203.137       2669.955      15131.593      3397.206
## 3       11616.72    23201.479       6323.184       5391.040      9657.898
## 4       15315.84    11578.818       5276.370       9676.561      4878.525
## 5       10024.67    10516.662       3596.335       3973.209      2631.006
## 6       11237.27     8790.464       6082.952      33698.805      4509.807
## 7       58495.24     7053.850      89544.260       6309.509     51613.250
##   413.1993_5.357 329.1602_5.369 629.3537_5.37 343.1396_5.368 200.1291_5.38
## 2      20376.252       24620.92      4531.787       14806.88      19595.50
## 3       6692.107       11565.42      4704.149       46210.96      46915.11
## 4      16209.312       13950.69     14028.584       20233.74      28769.76
## 5       6354.866       13071.86      3503.574       10672.63      22697.19
## 6      33519.004       18615.52      4097.575       24811.52      27645.81
## 7       3962.460       72749.52      6564.566      248378.98     130450.05
##   479.2283_5.383 229.0539_5.383 640.3334_5.395 662.3153_5.383 411.2021_5.398
## 2       58214.73       2134.525       1879.221       500.0201      10346.427
## 3       40937.79     121871.550      21882.246      6553.6025      13203.248
## 4       25046.62      14170.387      21452.850      5815.1357      17267.072
## 5       16035.87      57323.234       1315.734       500.0000       9837.673
## 6       21580.66      13520.754       2236.627       500.0225      14340.032
## 7       11134.73     105680.120      42352.715      9797.3790      32526.982
##   553.1926_5.396 246.1531_5.399 407.2799_5.411 621.1797_5.389 543.2074_5.421
## 2       500.0201       8996.229       1028.050      1070.4548      1085.4550
## 3       502.2117      10460.275      10389.713       502.2117       502.2117
## 4       500.2725      20256.697       1975.273       500.2725      1076.1653
## 5       500.0000       8449.521      14899.009       500.0000       500.0000
## 6      1102.4485      10757.152       2966.675      1057.1858      1269.5510
## 7       502.2908       5103.680       1206.440       502.2908      1047.4636
##   391.1968_5.431 463.0831_5.418 603.0611_5.431 467.1919_5.446 193.0353_5.465
## 2       2738.191       1340.493       500.0201      15354.949       3243.827
## 3       1827.175       2845.350       502.2117       5982.773       3619.281
## 4       2538.674       2448.247       500.2725       9843.955       3813.466
## 5       3200.716       1009.453       500.0000      15191.840       1430.522
## 6       2528.204       1852.463       500.0225      11772.958       3062.754
## 7       4559.509       3426.567      1396.4355      12405.883       5620.267
##   405.1707_5.449 407.129_5.446 474.1054_5.422 535.0762_5.453 528.2617_5.454
## 2       500.0201      500.0201       500.0201       500.0201       4031.657
## 3       502.2117      502.2117       502.2117       502.2117       2044.181
## 4      1529.2470     1062.6777       500.2725       500.2725       3067.172
## 5       500.0000      500.0000       500.0000       500.0000       1983.262
## 6      1054.0139     1142.9274       500.0225       500.0225       2681.405
## 7      1537.0580     1222.5721      1744.0751       502.2908       2752.005
##   405.118_5.456 421.0582_5.463 319.1396_5.493 305.1604_5.512 367.2123_5.512
## 2      1697.507      2708.6428      40740.530       7284.778       1740.803
## 3      1438.770      1310.8369      35223.110       3532.349       1125.647
## 4      1958.479       500.2725      36789.465      11569.745       3451.541
## 5      1247.273      1365.8150       3131.644       5746.319       1330.111
## 6      1524.505     54073.2600      12863.197      27119.117       9470.622
## 7      1623.666      1613.3344      28748.297      34464.710       5390.835
##   526.2476_5.551 379.1955_5.602 435.2232_5.611 416.1536_5.683 461.1337_5.706
## 2      18850.816       500.0201       19744.72       500.0201       3057.541
## 3       5487.000       502.2117       38704.18      2210.1304       6795.542
## 4      15333.250      1054.3843       18302.21      2178.9585       8785.196
## 5       4479.613      1295.2130       12186.93      3820.6120      10571.638
## 6       7234.536      1333.6758       13620.89      2163.3333       8601.282
## 7      24299.518     80812.1100       53611.05      2933.4980       7262.471
##   481.2073_5.68 491.1861_5.71 501.2122_5.698 583.3118_5.69 486.1199_5.689
## 2     25390.588     1320.0769       500.0201      3827.360       500.0201
## 3     11387.335     6180.4980     20087.5780     10774.948       502.2117
## 4     15662.765     1049.0277      1673.5681      7042.072       500.2725
## 5     10571.452      500.0000      1145.7780      6175.060       500.0000
## 6      6319.445      500.0225      1123.5095     15891.990       500.0225
## 7     16433.998     1133.5822      1158.9225      2899.594       502.2908
##   477.2332_5.701 500.282_5.708 445.1587_5.793 529.121_5.76 594.3642_5.768
## 2       2181.838      500.0201       3087.354     1793.982       6973.248
## 3       1590.877      502.2117       2069.001     6140.836      70584.640
## 4       1166.601      500.2725       2656.841     6818.574      12761.518
## 5       1461.699    39633.3950       2540.361     7222.016      25257.908
## 6       2061.091      500.0225       2481.289     5701.036       6704.621
## 7      16236.400      502.2908       3431.762     6164.163       5536.947
##   331.2144_5.765 448.1961_5.778 467.1506_5.777 747.3107_5.769 753.328_5.771
## 2       1633.969       500.0201       2048.356       500.0201      500.0201
## 3       2371.107       502.2117       6777.258      1497.0440      502.2117
## 4       7880.214       500.2725      10671.206      1494.2919     1102.9610
## 5       6886.719       500.0000      12089.307       500.0000     1087.0150
## 6       5070.476      1175.8634      10565.586       500.0225      500.0225
## 7       6276.514       502.2908       7449.460       502.2908      502.2908
##   461.1338_5.769 685.341_5.775 331.1763_5.775 451.125_5.775 399.1634_5.776
## 2       3057.541      500.0201       31980.71      3377.032       5757.473
## 3       8331.296     2162.3804      144166.00      9500.977      26219.334
## 4      12213.981     4053.9753      216570.28     14970.229      35131.510
## 5      11611.581     4324.6170      205911.58     15217.675      38359.668
## 6       9252.228     2833.4746      164455.47     11973.705      28834.256
## 7      10928.138     2208.0051      185423.05     11140.247      28858.064
##   387.1489_5.77 663.3572_5.772 367.1578_5.796 429.1762_5.798 407.2799_5.805
## 2      500.0201       1118.378       88616.80      16817.889       1725.492
## 3      502.2117       5551.091       34362.19      11833.716       8467.000
## 4      500.2725       2482.781       33942.82       6238.964       2241.195
## 5      500.0000       4029.835       10800.80       7995.852      13887.737
## 6      500.0225       2061.733      186158.03       4617.967      10292.009
## 7      502.2908       2043.857       27513.76      18331.111       1285.937
##   222.1134_5.811 509.2752_5.821 437.0526_5.832 511.2181_5.843 461.2388_5.842
## 2       20131.91      12520.979      7512.7690       6566.137      11973.684
## 3       32680.53       3916.246      1170.5023      12403.603      13561.204
## 4       43111.19       7785.123       500.2725       6135.029      14784.519
## 5       25701.31      10226.408      2552.1150       3394.999       9140.549
## 6       28337.33      13470.897      9565.3670       5085.640      12646.889
## 7       46498.84       7646.686      1519.2506       7645.784      23317.490
##   495.2232_5.846 529.162_5.829 345.1553_5.874 467.2645_5.878 497.2751_5.86
## 2      30918.535      500.0201       23340.36      23616.440      2610.361
## 3       6232.970     1601.7107       25768.89       3164.606      1742.850
## 4       5922.314      500.2725       35932.03       6060.458      2179.147
## 5       5351.081      500.0000       16837.64      11580.010      1959.350
## 6       2931.729     1127.5375       23477.24      12453.060      4171.294
## 7      28736.440     1354.7705       37412.69       3336.330      4375.229
##   613.3589_5.89 379.1393_5.891 463.2334_5.897 475.2184_5.932 565.3012_5.907
## 2      26207.87      1218.0563      18118.693       2698.464      13901.072
## 3      22226.75      1165.9767       6107.706       1337.656      10938.400
## 4      57371.42       500.2725       8941.656       2093.851      19063.072
## 5      19845.78      1433.1550      12609.671        500.000       7021.513
## 6      17457.36      1558.3872      20039.746       1790.844       5426.211
## 7      57183.98      1505.9944       7462.673      10889.003       5859.906
##   583.3118_5.932 491.228_5.918 567.3168_5.938 528.2633_5.962 550.2453_5.959
## 2       3671.780      3077.490      17762.637       38637.63      10067.388
## 3      14698.705      1077.964       7784.801       28933.84      10546.358
## 4       5976.672      1191.009      13694.300       50107.07      12697.360
## 5       1829.164      1246.042       7636.197       36839.25       8387.270
## 6       9048.536      3320.289       6765.653       31671.00       7620.151
## 7       9995.939      2861.871       4236.403       94076.74      24963.320
##   509.2379_5.991 443.1557_5.98 465.1373_5.985 446.2908_6.024 369.1552_5.993
## 2       3319.117      92757.78       23771.93       1971.588       8651.617
## 3       2286.994      66802.67       17166.88      10073.200       5791.534
## 4       3478.798      33966.92       10277.86       7636.633      10599.623
## 5       1776.782      45578.85       13733.12       2564.062       8412.393
## 6       3516.846      39452.70       11983.03       3319.900       9297.987
## 7       6879.712     102725.41       24294.42      11342.148      18756.162
##   345.1552_6.009 579.2778_6.011 511.2909_6.014 512.1916_6.018 624.3385_6.01
## 2       29148.08      18536.420       99607.26       500.0201      9868.496
## 3       29983.03       8165.457       40257.83       502.2117      5978.224
## 4       38178.92       8655.914       43796.23       500.2725     24226.707
## 5       15681.92      13243.390       63861.29       500.0000      6894.057
## 6       28462.55       5080.341       30582.42       500.0225      4857.556
## 7       23003.60       6157.999       24339.00       502.2908     24894.426
##   476.1913_6.018 417.2126_6.021 544.1789_6.025 496.198_6.048 257.0816_6.056
## 2       500.0201       19204.34       500.0201      500.0201     12280.1540
## 3       502.2117       17715.61       502.2117      502.2117     10617.8750
## 4       500.2725       22952.48       500.2725      500.2725       500.2725
## 5       500.0000       10533.72       500.0000      500.0000       500.0000
## 6       500.0225       18213.11       500.0225      500.0225       500.0225
## 7       502.2908       35303.63       502.2908      502.2908       502.2908
##   369.1737_6.099 437.1608_6.099 566.3329_6.114 446.2907_6.081 533.2364_6.145
## 2       66615.31       9016.866       2603.656       1971.588       55716.52
## 3       41354.35       6038.269       2093.774       8095.715       15094.43
## 4       45262.42       7218.675       6567.755      10381.021       36507.91
## 5       35725.32       5862.789       2332.630       2564.062       39470.75
## 6      130593.62      17558.717       1887.082       1796.123       43421.99
## 7       58683.89       9514.269       5535.015       5062.537       19414.73
##   465.2493_6.146 869.3936_6.15 601.2235_6.147 585.1981_6.148 523.2077_6.148
## 2      300830.66      500.0201      17970.027      18568.012      16883.537
## 3       78652.27      502.2117       5087.282       5776.009       4331.282
## 4      186971.88      500.2725      11645.340      10978.694      10122.112
## 5      202456.44      500.0000      12246.770      14130.377      12557.078
## 6      231344.11      500.0225      12881.929      13683.715      12175.300
## 7      116360.90      502.2908       7134.190       7617.415       6948.331
##   510.2524_6.169 254.6229_6.168 627.3743_6.176 457.2207_6.206 521.239_6.221
## 2       20275.67       4623.098       6618.135       500.0201     1046.2118
## 3       17112.49       3222.247       4524.073       502.2117      502.2117
## 4       44985.68       7927.392       7483.667      1003.8928     1277.0312
## 5       16190.15       3123.695       4299.785       500.0000      500.0000
## 6       16388.15       2694.713      14348.077      1160.4958     1013.5504
## 7       19043.18       2504.451      12548.565      1079.9790     1331.9034
##   393.2643_6.229 517.1295_6.231 579.0995_6.236 381.1551_6.237 193.0354_6.242
## 2       7018.804       500.0201       500.0201       2396.845      1207.0001
## 3       5735.161       502.2117       502.2117       1200.433      1142.7527
## 4      12394.640       500.2725       500.2725       1279.890       500.2725
## 5       3846.231       500.0000       500.0000       1057.665       500.0000
## 6       9533.654       500.0225       500.0225       3174.256      1533.3323
## 7       9603.908      1268.0364       502.2908       4781.780      1299.9011
##   381.1937_6.247 439.1146_6.219 501.1047_6.238 449.142_6.234 511.1128_6.237
## 2       1244.777       500.0201       500.0201     1281.9812       500.0201
## 3       1381.121       502.2117       502.2117     1067.3020       502.2117
## 4       1012.266      1008.9587       500.2725      500.2725       500.2725
## 5       1185.178       500.0000       500.0000      500.0000       500.0000
## 6       1746.768      1056.6683       500.0225     1131.5266      1022.5649
## 7       1270.590      1045.2396      1060.7882     1961.8164       502.2908
##   405.2644_6.291 573.2395_6.305 471.2417_6.297 307.1184_6.294 509.2751_6.332
## 2       1387.920       500.0201      18684.473       6102.585      21149.959
## 3       3724.927      1008.0635      18294.360       1373.262       4311.451
## 4       1505.126       500.2725      23933.836       1323.858      11959.602
## 5       2287.129      1017.5740       7752.073       2922.535      20269.045
## 6      11140.809       500.0225       6665.779      24614.324      11147.688
## 7       2388.322      5741.0110      35014.140      20257.760       3102.041
##   441.2108_6.348 419.2281_6.362 324.0682_6.363 280.0779_6.362 489.27_6.391
## 2       4303.211      11611.408       500.0201       500.0201    19273.875
## 3       3087.004       7739.516       502.2117       502.2117    15949.580
## 4       3277.203      13111.481       500.2725       500.2725     8301.648
## 5       2454.044       8878.062       500.0000       500.0000     8016.592
## 6       2949.618       4228.332       500.0225       500.0225    12656.266
## 7       5087.945      14919.423      1066.9482       502.2908    30728.766
##   448.3058_6.47 495.296_6.494 623.2016_6.501 613.1932_6.507 551.2033_6.504
## 2     17199.805     27995.438      1837.4498      1894.7000      1654.2815
## 3      7255.558      8289.567      1504.4625      1087.0563      1042.4944
## 4     13846.405     19739.857       500.2725       500.2725       500.2725
## 5     12527.042     18634.680       500.0000       500.0000       500.0000
## 6     18120.896     12107.604      1008.3889       500.0225       500.0225
## 7      3281.531     18387.506      1411.7673      1726.5679      1590.9014
##   629.2176_6.511 591.2109_6.51 493.2439_6.516 561.231_6.512 691.188_6.507
## 2      2108.0002     1857.5790      18997.682     4671.8643     1491.9589
## 3      1077.4749     1005.4697       9637.566     2719.0767     1057.6036
## 4       500.2725      500.2725       1452.618      500.2725      500.2725
## 5       500.0000      500.0000       2134.265      500.0000     1014.5690
## 6      1305.1003     1174.1191       4077.137     1140.4529      500.0225
## 7      1675.7294     1469.7109      12909.848     2969.5227     1273.0312
##   493.2869_6.516 513.2714_6.619 489.27_6.555 514.2774_6.559 446.2909_6.562
## 2      1569.7882      12710.682    22514.047      16738.121       70527.09
## 3      1346.8307       5424.427    11159.244       5405.352       23826.06
## 4      1046.6996       4672.182     8618.839       6591.541       28002.06
## 5       500.0000       3951.774    10743.843       3153.488       10707.77
## 6       500.0225       7240.870     9633.079       7264.917       24641.28
## 7      1055.0084      13957.794    22765.887      11843.554       46801.46
##   534.2499_6.614 512.2682_6.624 567.317_6.697 491.2855_6.773 407.2801_6.791
## 2       9309.471       39989.21      3238.916       4670.773       2874.274
## 3       3499.244       12448.27      9105.049       8206.888       1008.462
## 4       4768.947       16551.22     11183.833       4406.344       4265.188
## 5       2497.870       10731.49      2711.477       3076.349       1270.337
## 6       5315.484       19152.41      3992.479       2627.638      44685.710
## 7       8661.400       39859.50     12001.492      11399.526       1092.445
##   507.2231_6.98 505.2452_7.002 267.1235_7.063 437.18_7.078 573.2393_7.26
## 2      4173.197       500.0201      34378.414    1187.5945      500.0201
## 3     25650.576       502.2117      23522.305    1160.8503      502.2117
## 4     22368.453      1112.6277       9432.807     500.2725      500.2725
## 5     32762.258       500.0000      87857.734     500.0000     1037.9590
## 6     24798.738       500.0225      58489.620    6081.6685      500.0225
## 7     19402.658       502.2908      53023.780    1701.7600     3339.9758
##   673.2558_7.365 519.223_7.484 557.2465_7.479 517.2413_8.045 449.254_8.044
## 2       500.0201     1176.9064      1107.4280      20837.479    116360.600
## 3       502.2117      502.2117      1055.2023       1358.101      6277.505
## 4       500.2725     1026.7890       500.2725      12336.555     62160.650
## 5       500.0000     1087.8320       500.0000      14514.675     76166.440
## 6       500.0225     1020.6257       500.0225      20214.268    113360.130
## 7      5379.2450      502.2908      2644.6428       1239.258      3941.558

Find connections

connection <- find_connections(data = data_notame,
                               features = features,
                               corr_thresh = 0.9,
                               rt_window = 1/60,
                               name_col = "mz_rt",
                               mz_col = "mz",
                               rt_col = "rt")
## [1] 100
## [1] 200
## [1] 300
## [1] 400
## [1] 500
## [1] 600
## [1] 700
## [1] 800
## [1] 900
## [1] 1000
## [1] 1100
## [1] 1200
## [1] 1300
## [1] 1400
head(connection)
##                x              y       cor rt_diff  mz_diff
## 1  236.065_0.603 168.0777_0.606 0.9761211   0.003 -67.9873
## 2  275.056_0.654 275.0569_0.663 0.9311993   0.009   0.0009
## 3  265.0732_0.64 321.0625_0.656 0.9808950   0.016  55.9893
## 4 277.0852_0.658 321.0625_0.656 0.9038537  -0.002  43.9773
## 5 321.0625_0.656 373.0567_0.663 0.9401514   0.007  51.9942
## 6  151.0066_0.66 351.0199_0.667 0.9261984   0.007 200.0133

Clustering

clusters <- find_clusters(connections = connection, d_thresh = 0.8)
## 153 components found
## 
## Component 100 / 153 
## 67 components found
## 
## 29 components found
## 
## 9 components found
## 
## 1 components found
# assign a cluster ID to all features. Clusters are named after feature with highest median peak height
features_clustered <- assign_cluster_id(data_notame, clusters, features, name_col = "mz_rt")

# lets see how many features are removed when we only keep one feature per cluster
pulled <- pull_clusters(data_notame, features_clustered, name_col = "mz_rt")
cluster_data <- pulled$cdata
cluster_features <- pulled$cfeatures

# how much did we trim our data down by?
nrow(omicsdata) - nrow(cluster_features)
## [1] 486
# export clustered feature list
write_csv(cluster_features,
          "Feature lists/c18neg-clustered-features.csv")

Reduce dataset based on clustering

# transpose the full dataset back to wide so that it is more similar to the notame dataset
imp_meta_omics_wide <- imp_meta_omics %>%
  dplyr::select(-"row_ID") %>%
  pivot_wider(names_from = mz_rt,
              values_from = peak_height)

# list of reduced features
clusternames <- cluster_features$mz_rt

# select only the features are in the reduced list
imp_clust <- imp_meta_omics_wide[,c(names(imp_meta_omics_wide) %in% clusternames)]

# bind back sample names
imp_clust <- cbind(imp_meta_omics_wide[1], imp_clust)

tibble(imp_clust)
## # A tibble: 56 × 924
##    sample_ID `168.0777_0.606` `154.0621_0.609` `124.0072_0.616` `193.0351_0.617`
##    <chr>                <dbl>            <dbl>            <dbl>            <dbl>
##  1 6111_U4_…            6707.          304458.           63059.          110661.
##  2 6101_U2_…           81842.          112404.           22064.           50736.
##  3 6102_U1_…           29358.          168966.           56237.           54823.
##  4 6110_U2_…           19074.           67706.           22557.           27334.
##  5 6105_U4_…           59856.          208993.           56522.           51905.
##  6 6103_U4_…           90745.           92892.            4167.           81048.
##  7 6105_U1_…           36894.          248975.           63102.           70254.
##  8 6104_U1_…           29693.          322896            51042.           56236.
##  9 6113_U4_…          110885.          155423.           44750.           73910.
## 10 6105_U2_…           64532.          262397.           47441.           94744 
## # ℹ 46 more rows
## # ℹ 919 more variables: `239.1144_0.622` <dbl>, `195.051_0.627` <dbl>,
## #   `215.0326_0.629` <dbl>, `219.0457_0.629` <dbl>, `217.0486_0.63` <dbl>,
## #   `245.0433_0.63` <dbl>, `165.0405_0.634` <dbl>, `187.0383_0.634` <dbl>,
## #   `235.057_0.641` <dbl>, `135.0295_0.64` <dbl>, `277.0852_0.658` <dbl>,
## #   `179.0556_0.643` <dbl>, `149.0089_0.649` <dbl>, `547.1106_0.67` <dbl>,
## #   `149.0452_0.654` <dbl>, `262.0364_0.654` <dbl>, `321.0625_0.656` <dbl>, …

New mz vs rt plot

Let’s see how our clustered data looks now compared to the original

# plot new rt vs mz scatterplot post-clustering
(plot_mzvsrt_postcluster <- cluster_features %>%
  ggplot(aes(x = rt,
             y = mz)) +
  geom_point() +
  theme_minimal() +
  labs(x = "Retention time, min",
       y = "m/z, neutral",
       title = "mz across RT for all features after clustering"))

# plot both scatterplots to compare with and without notame clustering
(scatterplots <- ggarrange(plot_mzvsrt, 
                           plot_mzvsrt_postcluster, 
                           nrow = 2))

There are still some features that line up, but the clustered data looks much better.

Wrangle new data

# bind back new clustered data with metadata
imp_metabind_clust <- right_join(metadata, 
                                 imp_clust,
                                 by = "sample_ID")

Visualize untransformed data

More wrangling

# change meta data columns to character so that I can change NAs from QCs to "QC"
imp_metabind_clust <- imp_metabind_clust %>%
  mutate_at(c("Subject",
              "Period",
              "Intervention",
              "pre_post",
              "sequence",
              "Intervention_week",
              "Sex",
              "Age",
              "BMI"),
            as.character) 

# replace NAs in metadata columns for QCs
imp_metabind_clust[is.na(imp_metabind_clust)] <- "QC"

# unite pre_post column with intervention column to create pre_intervention column
imp_metabind_clust <- imp_metabind_clust %>%
  unite(col = "pre_post_intervention",
        c("pre_post","Intervention"),
        sep = "_",
        remove = FALSE)

# long df
imp_metabind_clust_tidy <- imp_metabind_clust %>%
  pivot_longer(cols = 12:ncol(.),
               names_to = "mz_rt",
               values_to = "rel_abund")

# structure check
str(imp_metabind_clust_tidy)
## tibble [51,688 × 13] (S3: tbl_df/tbl/data.frame)
##  $ sample_ID            : chr [1:51688] "6101_U1_C18NEG_59" "6101_U1_C18NEG_59" "6101_U1_C18NEG_59" "6101_U1_C18NEG_59" ...
##  $ Subject              : chr [1:51688] "6101" "6101" "6101" "6101" ...
##  $ Period               : chr [1:51688] "U1" "U1" "U1" "U1" ...
##  $ pre_post_intervention: chr [1:51688] "pre_Red" "pre_Red" "pre_Red" "pre_Red" ...
##  $ Intervention         : chr [1:51688] "Red" "Red" "Red" "Red" ...
##  $ pre_post             : chr [1:51688] "pre" "pre" "pre" "pre" ...
##  $ sequence             : chr [1:51688] "R_Y" "R_Y" "R_Y" "R_Y" ...
##  $ Intervention_week    : chr [1:51688] "2" "2" "2" "2" ...
##  $ Sex                  : chr [1:51688] "F" "F" "F" "F" ...
##  $ Age                  : chr [1:51688] "58" "58" "58" "58" ...
##  $ BMI                  : chr [1:51688] "31.0556029483653" "31.0556029483653" "31.0556029483653" "31.0556029483653" ...
##  $ mz_rt                : chr [1:51688] "168.0777_0.606" "154.0621_0.609" "124.0072_0.616" "193.0351_0.617" ...
##  $ rel_abund            : num [1:51688] 152309 169447 29742 66817 18535 ...

Boxplot

imp_metabind_clust_tidy %>%
  ggplot(aes(x = sample_ID, y = rel_abund, color = Intervention)) +
  geom_boxplot(alpha = 0.6) +
  scale_color_manual(values = c("light grey", "tomato1", "gold")) +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 90)) +
  labs(title = "LC-MS (-) Feature Abundances by Sample",
       subtitle = "Unscaled data",
       y = "Relative abundance")

Will need to log transform in order to normalize and actually see the data

Log2 transform

imp_metabind_clust_tidy_log2 <- imp_metabind_clust_tidy %>%
  mutate(rel_abund_log2 = log2(rel_abund))

Boxplot

(bp_data_quality <- imp_metabind_clust_tidy_log2 %>%
  ggplot(aes(x = sample_ID, y = rel_abund_log2, fill = Intervention)) +
  geom_boxplot(alpha = 0.6) +
  scale_fill_manual(values = c("light grey", "tomato1", "gold")) +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 90)) +
  labs(title = "LC-MS (-) Feature Abundances by Sample",
       subtitle = "Log2 transformed data",
       y = "Relative abundance"))

Much better! QCs look good.

PCAs

With QCS

Wrangle

# go back to wide data
imp_metabind_clust_log2 <- imp_metabind_clust_tidy_log2 %>%
  dplyr::select(!rel_abund) %>%
  pivot_wider(names_from = mz_rt,
              values_from = rel_abund_log2)

PCA.imp_metabind_clust_log2 <- PCA(imp_metabind_clust_log2,  # wide data
                                   quali.sup = 1:11, # remove qualitative variables
                                   graph = FALSE, # don't graph
                                   scale.unit = FALSE) # don't scale, already transformed data

# PCA summary
kable(summary(PCA.imp_metabind_clust_log2))
## 
## Call:
## PCA(X = imp_metabind_clust_log2, scale.unit = FALSE, quali.sup = 1:11,  
##      graph = FALSE) 
## 
## 
## Eigenvalues
##                        Dim.1   Dim.2   Dim.3   Dim.4   Dim.5   Dim.6   Dim.7
## Variance             683.392 199.020 123.670 102.071  94.088  74.721  63.366
## % of var.             36.934  10.756   6.684   5.516   5.085   4.038   3.425
## Cumulative % of var.  36.934  47.690  54.374  59.891  64.976  69.014  72.439
##                        Dim.8   Dim.9  Dim.10  Dim.11  Dim.12  Dim.13  Dim.14
## Variance              52.088  41.754  36.438  30.649  29.881  26.059  21.995
## % of var.              2.815   2.257   1.969   1.656   1.615   1.408   1.189
## Cumulative % of var.  75.254  77.510  79.480  81.136  82.751  84.159  85.348
##                       Dim.15  Dim.16  Dim.17  Dim.18  Dim.19  Dim.20  Dim.21
## Variance              19.653  16.815  16.386  15.053  14.039  12.578  12.133
## % of var.              1.062   0.909   0.886   0.814   0.759   0.680   0.656
## Cumulative % of var.  86.410  87.319  88.205  89.018  89.777  90.457  91.112
##                       Dim.22  Dim.23  Dim.24  Dim.25  Dim.26  Dim.27  Dim.28
## Variance              11.907  10.517  10.337   9.384   9.071   8.277   7.809
## % of var.              0.644   0.568   0.559   0.507   0.490   0.447   0.422
## Cumulative % of var.  91.756  92.324  92.883  93.390  93.880  94.328  94.750
##                       Dim.29  Dim.30  Dim.31  Dim.32  Dim.33  Dim.34  Dim.35
## Variance               7.721   7.036   6.629   6.461   6.110   5.745   5.622
## % of var.              0.417   0.380   0.358   0.349   0.330   0.311   0.304
## Cumulative % of var.  95.167  95.547  95.906  96.255  96.585  96.895  97.199
##                       Dim.36  Dim.37  Dim.38  Dim.39  Dim.40  Dim.41  Dim.42
## Variance               5.347   4.991   4.888   4.338   4.188   3.996   3.826
## % of var.              0.289   0.270   0.264   0.234   0.226   0.216   0.207
## Cumulative % of var.  97.488  97.758  98.022  98.257  98.483  98.699  98.906
##                       Dim.43  Dim.44  Dim.45  Dim.46  Dim.47  Dim.48  Dim.49
## Variance               3.569   3.347   3.000   2.842   2.806   2.378   0.425
## % of var.              0.193   0.181   0.162   0.154   0.152   0.129   0.023
## Cumulative % of var.  99.099  99.279  99.442  99.595  99.747  99.875  99.898
##                       Dim.50  Dim.51  Dim.52  Dim.53  Dim.54  Dim.55
## Variance               0.392   0.345   0.327   0.289   0.270   0.258
## % of var.              0.021   0.019   0.018   0.016   0.015   0.014
## Cumulative % of var.  99.919  99.938  99.956  99.971  99.986 100.000
## 
## Individuals (the 10 first)
##                        Dist     Dim.1     ctr    cos2     Dim.2     ctr    cos2
## 1                 |  33.859 | -19.706   1.015   0.339 | -10.370   0.965   0.094
## 2                 |  33.433 | -21.457   1.203   0.412 | -13.706   1.686   0.168
## 3                 |  38.898 |  -7.407   0.143   0.036 |   6.261   0.352   0.026
## 4                 |  39.035 | -20.230   1.069   0.269 | -11.999   1.292   0.094
## 5                 |  39.371 | -17.492   0.800   0.197 |  -8.848   0.702   0.051
## 6                 |  71.848 |  60.047   9.422   0.698 | -27.379   6.726   0.145
## 7                 |  36.871 | -17.102   0.764   0.215 |  -5.206   0.243   0.020
## 8                 |  36.948 | -10.259   0.275   0.077 |  -0.526   0.002   0.000
## 9                 |  29.525 | -12.729   0.423   0.186 |   0.168   0.000   0.000
## 10                |  35.950 | -13.189   0.455   0.135 |  -1.858   0.031   0.003
##                       Dim.3     ctr    cos2  
## 1                 |  -4.291   0.266   0.016 |
## 2                 |  -4.629   0.309   0.019 |
## 3                 |  -5.284   0.403   0.018 |
## 4                 |  -4.063   0.238   0.011 |
## 5                 |  -1.953   0.055   0.002 |
## 6                 | -10.466   1.582   0.021 |
## 7                 |  -3.790   0.207   0.011 |
## 8                 | -10.837   1.696   0.086 |
## 9                 |   3.866   0.216   0.017 |
## 10                |  -7.047   0.717   0.038 |
## 
## Variables (the 10 first)
##                      Dim.1    ctr   cos2    Dim.2    ctr   cos2    Dim.3    ctr
## 168.0777_0.606    | -0.172  0.004  0.012 | -0.093  0.004  0.004 |  0.522  0.220
## 154.0621_0.609    | -0.079  0.001  0.010 | -0.131  0.009  0.027 |  0.092  0.007
## 124.0072_0.616    | -0.056  0.000  0.002 | -0.316  0.050  0.070 |  0.336  0.091
## 193.0351_0.617    |  0.162  0.004  0.105 |  0.085  0.004  0.029 | -0.101  0.008
## 239.1144_0.622    | -0.152  0.003  0.016 | -0.081  0.003  0.004 |  0.285  0.066
## 195.051_0.627     | -0.053  0.000  0.016 |  0.100  0.005  0.058 | -0.114  0.010
## 215.0326_0.629    | -0.138  0.003  0.100 |  0.073  0.003  0.028 | -0.025  0.000
## 219.0457_0.629    | -0.165  0.004  0.038 |  0.184  0.017  0.048 |  0.050  0.002
## 217.0486_0.63     | -0.104  0.002  0.016 |  0.200  0.020  0.058 |  0.035  0.001
## 245.0433_0.63     | -0.100  0.001  0.024 |  0.149  0.011  0.052 |  0.051  0.002
##                     cos2  
## 168.0777_0.606     0.115 |
## 154.0621_0.609     0.013 |
## 124.0072_0.616     0.079 |
## 193.0351_0.617     0.041 |
## 239.1144_0.622     0.055 |
## 195.051_0.627      0.074 |
## 215.0326_0.629     0.003 |
## 219.0457_0.629     0.003 |
## 217.0486_0.63      0.002 |
## 245.0433_0.63      0.006 |
## 
## Supplementary categories (the 10 first)
##                        Dist     Dim.1    cos2  v.test     Dim.2    cos2  v.test
## 6101_U1_C18NEG_59 |  33.859 | -19.706   0.339  -0.754 | -10.370   0.094  -0.735
## 6101_U2_C18NEG_30 |  37.365 | -15.616   0.175  -0.597 |   0.084   0.000   0.006
## 6101_U3_C18NEG_29 |  34.060 | -20.953   0.378  -0.802 |  -9.637   0.080  -0.683
## 6101_U4_C18NEG_14 |  35.550 | -19.295   0.295  -0.738 |  -8.036   0.051  -0.570
## 6102_U1_C18NEG_26 |  33.433 | -21.457   0.412  -0.821 | -13.706   0.168  -0.972
## 6102_U2_C18NEG_16 |  33.451 | -15.025   0.202  -0.575 |   0.911   0.001   0.065
## 6102_U3_C18NEG_48 |  38.088 | -16.350   0.184  -0.625 |  -1.375   0.001  -0.097
## 6102_U4_C18NEG_50 |  31.034 | -14.002   0.204  -0.536 |  -0.185   0.000  -0.013
## 6103_U1_C18NEG_21 |  38.898 |  -7.407   0.036  -0.283 |   6.261   0.026   0.444
## 6103_U2_C18NEG_60 |  42.492 | -11.051   0.068  -0.423 |   6.634   0.024   0.470
##                       Dim.3    cos2  v.test  
## 6101_U1_C18NEG_59 |  -4.291   0.016  -0.386 |
## 6101_U2_C18NEG_30 |  19.331   0.268   1.738 |
## 6101_U3_C18NEG_29 |  -1.538   0.002  -0.138 |
## 6101_U4_C18NEG_14 |  -6.816   0.037  -0.613 |
## 6102_U1_C18NEG_26 |  -4.629   0.019  -0.416 |
## 6102_U2_C18NEG_16 |  16.983   0.258   1.527 |
## 6102_U3_C18NEG_48 |  -4.878   0.016  -0.439 |
## 6102_U4_C18NEG_50 |  -8.331   0.072  -0.749 |
## 6103_U1_C18NEG_21 |  -5.284   0.018  -0.475 |
## 6103_U2_C18NEG_60 |  17.452   0.169   1.569 |
Dist Dim.1 cos2 v.test Dim.2 cos2 v.test Dim.3 cos2 v.test
6101_U1_C18NEG_59 | 33.859 | -19.706 0.339 -0.754 | -10.370 0.094 -0.735 | -4.291 0.016 -0.386 |
6101_U2_C18NEG_30 | 37.365 | -15.616 0.175 -0.597 | 0.084 0.000 0.006 | 19.331 0.268 1.738 |
6101_U3_C18NEG_29 | 34.060 | -20.953 0.378 -0.802 | -9.637 0.080 -0.683 | -1.538 0.002 -0.138 |
6101_U4_C18NEG_14 | 35.550 | -19.295 0.295 -0.738 | -8.036 0.051 -0.570 | -6.816 0.037 -0.613 |
6102_U1_C18NEG_26 | 33.433 | -21.457 0.412 -0.821 | -13.706 0.168 -0.972 | -4.629 0.019 -0.416 |
6102_U2_C18NEG_16 | 33.451 | -15.025 0.202 -0.575 | 0.911 0.001 0.065 | 16.983 0.258 1.527 |
6102_U3_C18NEG_48 | 38.088 | -16.350 0.184 -0.625 | -1.375 0.001 -0.097 | -4.878 0.016 -0.439 |
6102_U4_C18NEG_50 | 31.034 | -14.002 0.204 -0.536 | -0.185 0.000 -0.013 | -8.331 0.072 -0.749 |
6103_U1_C18NEG_21 | 38.898 | -7.407 0.036 -0.283 | 6.261 0.026 0.444 | -5.284 0.018 -0.475 |
6103_U2_C18NEG_60 | 42.492 | -11.051 0.068 -0.423 | 6.634 0.024 0.470 | 17.452 0.169 1.569 |
# pull PC coordinates into df
PC_coord_QC_log2 <- as.data.frame(PCA.imp_metabind_clust_log2$ind$coord)

# bind back metadata from cols 1-10
PC_coord_QC_log2 <- bind_cols(imp_metabind_clust_log2[,1:11], PC_coord_QC_log2)

# grab some variance explained
importance_QC <- PCA.imp_metabind_clust_log2$eig

# set variance explained with PC1, round to 2 digits
PC1_withQC <- round(importance_QC[1,2], 2)

# set variance explained with PC2, round to 2 digits
PC2_withQC <- round(importance_QC[2,2], 2)

Plots

Using FactoExtra package

# scree plot
fviz_eig(PCA.imp_metabind_clust_log2)

# get eigenvalues
kable(get_eig(PCA.imp_metabind_clust_log2))
eigenvalue variance.percent cumulative.variance.percent
Dim.1 683.3918481 36.9342082 36.93421
Dim.2 199.0196047 10.7561007 47.69031
Dim.3 123.6695634 6.6837751 54.37408
Dim.4 102.0708619 5.5164639 59.89055
Dim.5 94.0878635 5.0850193 64.97557
Dim.6 74.7207523 4.0383154 69.01388
Dim.7 63.3657151 3.4246275 72.43851
Dim.8 52.0876271 2.8150984 75.25361
Dim.9 41.7541278 2.2566199 77.51023
Dim.10 36.4384195 1.9693302 79.47956
Dim.11 30.6488590 1.6564309 81.13599
Dim.12 29.8811065 1.6149373 82.75093
Dim.13 26.0587124 1.4083544 84.15928
Dim.14 21.9948367 1.1887205 85.34800
Dim.15 19.6529538 1.0621524 86.41015
Dim.16 16.8154251 0.9087969 87.31895
Dim.17 16.3863365 0.8856066 88.20456
Dim.18 15.0526980 0.8135296 89.01809
Dim.19 14.0390340 0.7587457 89.77683
Dim.20 12.5781503 0.6797916 90.45662
Dim.21 12.1332234 0.6557453 91.11237
Dim.22 11.9071599 0.6435276 91.75590
Dim.23 10.5169969 0.5683956 92.32429
Dim.24 10.3365270 0.5586421 92.88294
Dim.25 9.3840090 0.5071628 93.39010
Dim.26 9.0714465 0.4902703 93.88037
Dim.27 8.2774007 0.4473557 94.32772
Dim.28 7.8088541 0.4220329 94.74976
Dim.29 7.7209716 0.4172833 95.16704
Dim.30 7.0356148 0.3802428 95.54728
Dim.31 6.6288269 0.3582578 95.90554
Dim.32 6.4605273 0.3491620 96.25470
Dim.33 6.1102163 0.3302293 96.58493
Dim.34 5.7451875 0.3105011 96.89543
Dim.35 5.6221854 0.3038534 97.19929
Dim.36 5.3466651 0.2889628 97.48825
Dim.37 4.9905238 0.2697150 97.75796
Dim.38 4.8883642 0.2641938 98.02216
Dim.39 4.3382805 0.2344642 98.25662
Dim.40 4.1875363 0.2263172 98.48294
Dim.41 3.9960660 0.2159691 98.69891
Dim.42 3.8258030 0.2067672 98.90568
Dim.43 3.5689283 0.1928843 99.09856
Dim.44 3.3473644 0.1809098 99.27947
Dim.45 2.9998579 0.1621286 99.44160
Dim.46 2.8418558 0.1535893 99.59519
Dim.47 2.8055619 0.1516278 99.74682
Dim.48 2.3780328 0.1285218 99.87534
Dim.49 0.4247864 0.0229578 99.89830
Dim.50 0.3918083 0.0211754 99.91947
Dim.51 0.3453639 0.0186653 99.93814
Dim.52 0.3273038 0.0176893 99.95583
Dim.53 0.2894124 0.0156414 99.97147
Dim.54 0.2704455 0.0146163 99.98608
Dim.55 0.2575039 0.0139169 100.00000
# scores plot
fviz_pca_ind(PCA.imp_metabind_clust_log2)

Manual scores plot

# manual scores plot
(PCA_withQCs <- PC_coord_QC_log2 %>%
  ggplot(aes(x = Dim.1, y = Dim.2,
             fill = factor(Intervention, levels = c("Yellow", "Red", "QC")))) +
  geom_point(shape = 21, alpha = 0.8) +
  scale_fill_manual(values = c("gold", "tomato1", "light grey")) +
  scale_color_manual(values = "black") +  
  theme_minimal() +
  coord_fixed(PC2_withQC/PC1_withQC) +
  labs(x = glue::glue("PC1: {PC1_withQC}%"),
       y = glue::glue("PC2: {PC2_withQC}%"),
       fill = "Group",
       title = "Principal Components Analysis Scores Plot",
       subtitle = "Log2 transformed data"))

There seems to be outliers here. We’ll keep investigating. Let’s see how the data looks without the QCs.

Without QCs

Wrangle

imp_metabind_clust_log2_noQCs <- imp_metabind_clust_log2 %>%
  filter(Intervention != "QC")

PCA.imp_metabind_clust_log2_noQCs <- PCA(imp_metabind_clust_log2_noQCs, # wide data
                               quali.sup=1:11, # remove qualitative variables
                               graph=FALSE, # don't graph
                               scale.unit=FALSE) # don't scale, we already did this

# look at summary
kable(summary(PCA.imp_metabind_clust_log2_noQCs))
## 
## Call:
## PCA(X = imp_metabind_clust_log2_noQCs, scale.unit = FALSE, quali.sup = 1:11,  
##      graph = FALSE) 
## 
## 
## Eigenvalues
##                        Dim.1   Dim.2   Dim.3   Dim.4   Dim.5   Dim.6   Dim.7
## Variance             539.822 169.381 140.275 110.123  91.704  76.898  66.493
## % of var.             31.065   9.747   8.072   6.337   5.277   4.425   3.826
## Cumulative % of var.  31.065  40.812  48.884  55.221  60.498  64.923  68.750
##                        Dim.8   Dim.9  Dim.10  Dim.11  Dim.12  Dim.13  Dim.14
## Variance              49.220  43.349  38.721  35.181  30.920  25.958  23.763
## % of var.              2.832   2.495   2.228   2.025   1.779   1.494   1.367
## Cumulative % of var.  71.582  74.077  76.305  78.330  80.109  81.603  82.970
##                       Dim.15  Dim.16  Dim.17  Dim.18  Dim.19  Dim.20  Dim.21
## Variance              20.675  19.277  18.702  16.843  14.911  14.195  14.087
## % of var.              1.190   1.109   1.076   0.969   0.858   0.817   0.811
## Cumulative % of var.  84.160  85.269  86.345  87.315  88.173  88.990  89.800
##                       Dim.22  Dim.23  Dim.24  Dim.25  Dim.26  Dim.27  Dim.28
## Variance              12.382  12.109  11.608  10.913   9.728   9.273   9.058
## % of var.              0.713   0.697   0.668   0.628   0.560   0.534   0.521
## Cumulative % of var.  90.513  91.210  91.878  92.506  93.065  93.599  94.120
##                       Dim.29  Dim.30  Dim.31  Dim.32  Dim.33  Dim.34  Dim.35
## Variance               8.460   7.734   7.555   7.122   6.770   6.565   6.288
## % of var.              0.487   0.445   0.435   0.410   0.390   0.378   0.362
## Cumulative % of var.  94.607  95.052  95.487  95.897  96.286  96.664  97.026
##                       Dim.36  Dim.37  Dim.38  Dim.39  Dim.40  Dim.41  Dim.42
## Variance               5.829   5.787   5.065   4.885   4.665   4.468   4.159
## % of var.              0.335   0.333   0.291   0.281   0.268   0.257   0.239
## Cumulative % of var.  97.362  97.695  97.986  98.267  98.536  98.793  99.032
##                       Dim.43  Dim.44  Dim.45  Dim.46  Dim.47
## Variance               3.898   3.543   3.332   3.261   2.788
## % of var.              0.224   0.204   0.192   0.188   0.160
## Cumulative % of var.  99.256  99.460  99.652  99.840 100.000
## 
## Individuals (the 10 first)
##                        Dist     Dim.1     ctr    cos2     Dim.2     ctr    cos2
## 1                 |  29.956 | -10.598   0.433   0.125 | -10.477   1.350   0.122
## 2                 |  28.555 | -10.685   0.441   0.140 | -11.534   1.636   0.163
## 3                 |  38.642 |  -3.423   0.045   0.008 |   7.442   0.681   0.037
## 4                 |  35.702 | -11.267   0.490   0.100 | -14.830   2.705   0.173
## 5                 |  36.649 |  -9.241   0.330   0.064 | -10.296   1.304   0.079
## 6                 |  76.447 |  71.291  19.615   0.870 |  -1.760   0.038   0.001
## 7                 |  34.148 |  -9.610   0.356   0.079 |  -6.667   0.547   0.038
## 8                 |  35.420 |  -3.150   0.038   0.008 |   6.759   0.562   0.036
## 9                 |  27.862 |  -7.620   0.224   0.075 |  -3.192   0.125   0.013
## 10                |  33.850 |  -5.868   0.133   0.030 |   3.666   0.165   0.012
##                       Dim.3     ctr    cos2  
## 1                 |  -8.581   1.094   0.082 |
## 2                 |  -8.078   0.969   0.080 |
## 3                 |  -4.185   0.260   0.012 |
## 4                 | -11.152   1.847   0.098 |
## 5                 |  -6.240   0.578   0.029 |
## 6                 |  -8.485   1.069   0.012 |
## 7                 |  -8.005   0.952   0.055 |
## 8                 |  -7.665   0.873   0.047 |
## 9                 |   2.120   0.067   0.006 |
## 10                |  -4.304   0.275   0.016 |
## 
## Variables (the 10 first)
##                      Dim.1    ctr   cos2    Dim.2    ctr   cos2    Dim.3    ctr
## 168.0777_0.606    | -0.341  0.022  0.043 | -0.747  0.329  0.204 |  0.134  0.013
## 154.0621_0.609    | -0.097  0.002  0.013 | -0.276  0.045  0.103 | -0.013  0.000
## 124.0072_0.616    | -0.101  0.002  0.006 | -0.709  0.296  0.306 |  0.047  0.002
## 193.0351_0.617    |  0.181  0.006  0.113 |  0.284  0.048  0.278 |  0.046  0.002
## 239.1144_0.622    | -0.200  0.007  0.023 | -0.414  0.101  0.101 |  0.083  0.005
## 195.051_0.627     | -0.082  0.001  0.033 |  0.135  0.011  0.090 | -0.075  0.004
## 215.0326_0.629    | -0.174  0.006  0.136 |  0.022  0.000  0.002 | -0.026  0.000
## 219.0457_0.629    | -0.324  0.019  0.128 | -0.095  0.005  0.011 | -0.080  0.005
## 217.0486_0.63     | -0.281  0.015  0.102 | -0.061  0.002  0.005 | -0.077  0.004
## 245.0433_0.63     | -0.228  0.010  0.107 | -0.051  0.002  0.005 | -0.029  0.001
##                     cos2  
## 168.0777_0.606     0.007 |
## 154.0621_0.609     0.000 |
## 124.0072_0.616     0.001 |
## 193.0351_0.617     0.007 |
## 239.1144_0.622     0.004 |
## 195.051_0.627      0.028 |
## 215.0326_0.629     0.003 |
## 219.0457_0.629     0.008 |
## 217.0486_0.63      0.008 |
## 245.0433_0.63      0.002 |
## 
## Supplementary categories (the 10 first)
##                        Dist     Dim.1    cos2  v.test     Dim.2    cos2  v.test
## 6101_U1_C18NEG_59 |  29.956 | -10.598   0.125  -0.456 | -10.477   0.122  -0.805
## 6101_U2_C18NEG_30 |  35.342 |  -9.827   0.077  -0.423 |  -5.188   0.022  -0.399
## 6101_U3_C18NEG_29 |  29.987 | -12.056   0.162  -0.519 | -10.972   0.134  -0.843
## 6101_U4_C18NEG_14 |  32.060 | -10.748   0.112  -0.463 |  -7.377   0.053  -0.567
## 6102_U1_C18NEG_26 |  28.555 | -10.685   0.140  -0.460 | -11.534   0.163  -0.886
## 6102_U2_C18NEG_16 |  31.178 |  -9.010   0.084  -0.388 |  -1.759   0.003  -0.135
## 6102_U3_C18NEG_48 |  35.927 | -10.109   0.079  -0.435 |  -1.343   0.001  -0.103
## 6102_U4_C18NEG_50 |  28.780 |  -7.787   0.073  -0.335 |   2.039   0.005   0.157
## 6103_U1_C18NEG_21 |  38.642 |  -3.423   0.008  -0.147 |   7.442   0.037   0.572
## 6103_U2_C18NEG_60 |  41.607 |  -6.706   0.026  -0.289 |   3.723   0.008   0.286
##                       Dim.3    cos2  v.test  
## 6101_U1_C18NEG_59 |  -8.581   0.082  -0.725 |
## 6101_U2_C18NEG_30 |  19.468   0.303   1.644 |
## 6101_U3_C18NEG_29 |  -5.910   0.039  -0.499 |
## 6101_U4_C18NEG_14 | -10.218   0.102  -0.863 |
## 6102_U1_C18NEG_26 |  -8.078   0.080  -0.682 |
## 6102_U2_C18NEG_16 |  19.199   0.379   1.621 |
## 6102_U3_C18NEG_48 |  -5.800   0.026  -0.490 |
## 6102_U4_C18NEG_50 |  -8.232   0.082  -0.695 |
## 6103_U1_C18NEG_21 |  -4.185   0.012  -0.353 |
## 6103_U2_C18NEG_60 |  20.708   0.248   1.748 |
Dist Dim.1 cos2 v.test Dim.2 cos2 v.test Dim.3 cos2 v.test
6101_U1_C18NEG_59 | 29.956 | -10.598 0.125 -0.456 | -10.477 0.122 -0.805 | -8.581 0.082 -0.725 |
6101_U2_C18NEG_30 | 35.342 | -9.827 0.077 -0.423 | -5.188 0.022 -0.399 | 19.468 0.303 1.644 |
6101_U3_C18NEG_29 | 29.987 | -12.056 0.162 -0.519 | -10.972 0.134 -0.843 | -5.910 0.039 -0.499 |
6101_U4_C18NEG_14 | 32.060 | -10.748 0.112 -0.463 | -7.377 0.053 -0.567 | -10.218 0.102 -0.863 |
6102_U1_C18NEG_26 | 28.555 | -10.685 0.140 -0.460 | -11.534 0.163 -0.886 | -8.078 0.080 -0.682 |
6102_U2_C18NEG_16 | 31.178 | -9.010 0.084 -0.388 | -1.759 0.003 -0.135 | 19.199 0.379 1.621 |
6102_U3_C18NEG_48 | 35.927 | -10.109 0.079 -0.435 | -1.343 0.001 -0.103 | -5.800 0.026 -0.490 |
6102_U4_C18NEG_50 | 28.780 | -7.787 0.073 -0.335 | 2.039 0.005 0.157 | -8.232 0.082 -0.695 |
6103_U1_C18NEG_21 | 38.642 | -3.423 0.008 -0.147 | 7.442 0.037 0.572 | -4.185 0.012 -0.353 |
6103_U2_C18NEG_60 | 41.607 | -6.706 0.026 -0.289 | 3.723 0.008 0.286 | 20.708 0.248 1.748 |
# pull PC coordinates into df
PC_coord_noQCs_log2 <- as.data.frame(PCA.imp_metabind_clust_log2_noQCs$ind$coord)

# bind back metadata from cols 1-10
PC_coord_noQCs_log2 <- bind_cols(imp_metabind_clust_log2_noQCs[,1:11], PC_coord_noQCs_log2)

# grab some variance explained
importance_noQC <- PCA.imp_metabind_clust_log2_noQCs$eig

# set variance explained with PC1, round to 2 digits
PC1_noQC <- round(importance_noQC[1,2], 2)

# set variance explained with PC2, round to 2 digits
PC2_noQC <- round(importance_noQC[2,2], 2)

Plots

Using FactoExtra

# scree plot
fviz_eig(PCA.imp_metabind_clust_log2_noQCs)

# scores plot
fviz_pca_ind(PCA.imp_metabind_clust_log2_noQCs)

Manual scores plot

(PCA_withoutQCs <- PC_coord_noQCs_log2 %>%
  ggplot(aes(x = Dim.1, 
             y = Dim.2,
             fill = Intervention,
             text = sample_ID)) +
    geom_point(shape = 21, alpha = 0.8) +
    geom_hline(yintercept = 0, linetype = "dashed", alpha=0.5) +
    geom_vline(xintercept = 0, linetype = "dashed", alpha=0.5) +
    scale_fill_manual(values = c("gold", "tomato1")) +
    scale_color_manual(values = "black") +  
    theme_minimal() +
    coord_fixed(PC2_noQC/PC1_noQC) +
    labs(x = glue::glue("PC1: {PC1_noQC}%"),
         y = glue::glue("PC2: {PC2_noQC}%"),
         fill = "Intervention",
         title = "Principal Components Analysis Scores Plot",
         subtitle = "Log2 transformed data, without QCs"))

ggplotly(PCA_withoutQCs, tooltip = "text")

Interactive plot shows us that all of those visual outliers are subject 6106. Let’s see what the data looks like when we remove this outlier.

Removal of outlier

With QCs

Wrangle

# go back to wide data
imp_no6106_log2 <- imp_metabind_clust_tidy_log2 %>%
  dplyr::select(!rel_abund) %>%
  filter(Subject != 6106) %>%
  pivot_wider(names_from = mz_rt,
              values_from = rel_abund_log2)

PCA.imp_no6106_log2 <- PCA(imp_no6106_log2,  # wide data
                                   quali.sup = 1:11, # remove qualitative variables
                                   graph = FALSE, # don't graph
                                   scale.unit = FALSE) # don't scale, already transformed data

# PCA summary
kable(summary(PCA.imp_no6106_log2))
## 
## Call:
## PCA(X = imp_no6106_log2, scale.unit = FALSE, quali.sup = 1:11,  
##      graph = FALSE) 
## 
## 
## Eigenvalues
##                        Dim.1   Dim.2   Dim.3   Dim.4   Dim.5   Dim.6   Dim.7
## Variance             490.928 136.097 119.342 100.676  81.704  69.462  57.867
## % of var.             32.241   8.938   7.838   6.612   5.366   4.562   3.800
## Cumulative % of var.  32.241  41.179  49.016  55.628  60.994  65.556  69.356
##                        Dim.8   Dim.9  Dim.10  Dim.11  Dim.12  Dim.13  Dim.14
## Variance              46.064  36.930  32.740  32.399  27.047  23.881  21.976
## % of var.              3.025   2.425   2.150   2.128   1.776   1.568   1.443
## Cumulative % of var.  72.381  74.806  76.957  79.084  80.861  82.429  83.872
##                       Dim.15  Dim.16  Dim.17  Dim.18  Dim.19  Dim.20  Dim.21
## Variance              18.147  17.492  16.217  13.718  13.260  12.725  11.859
## % of var.              1.192   1.149   1.065   0.901   0.871   0.836   0.779
## Cumulative % of var.  85.064  86.213  87.278  88.179  89.049  89.885  90.664
##                       Dim.22  Dim.23  Dim.24  Dim.25  Dim.26  Dim.27  Dim.28
## Variance              10.976   9.943   9.717   9.265   8.420   7.804   7.735
## % of var.              0.721   0.653   0.638   0.608   0.553   0.513   0.508
## Cumulative % of var.  91.385  92.038  92.676  93.284  93.837  94.350  94.858
##                       Dim.29  Dim.30  Dim.31  Dim.32  Dim.33  Dim.34  Dim.35
## Variance               7.239   6.712   6.312   5.967   5.736   5.435   5.160
## % of var.              0.475   0.441   0.415   0.392   0.377   0.357   0.339
## Cumulative % of var.  95.333  95.774  96.189  96.580  96.957  97.314  97.653
##                       Dim.36  Dim.37  Dim.38  Dim.39  Dim.40  Dim.41  Dim.42
## Variance               4.607   4.424   4.334   4.064   3.639   3.362   3.133
## % of var.              0.303   0.291   0.285   0.267   0.239   0.221   0.206
## Cumulative % of var.  97.956  98.246  98.531  98.798  99.037  99.257  99.463
##                       Dim.43  Dim.44  Dim.45  Dim.46  Dim.47  Dim.48  Dim.49
## Variance               3.058   2.604   0.458   0.440   0.375   0.355   0.314
## % of var.              0.201   0.171   0.030   0.029   0.025   0.023   0.021
## Cumulative % of var.  99.664  99.835  99.865  99.894  99.918  99.942  99.962
##                       Dim.50  Dim.51
## Variance               0.293   0.279
## % of var.              0.019   0.018
## Cumulative % of var.  99.982 100.000
## 
## Individuals (the 10 first)
##                        Dist     Dim.1     ctr    cos2     Dim.2     ctr    cos2
## 1                 |  32.088 | -18.325   1.315   0.326 |  -2.495   0.088   0.006
## 2                 |  31.680 | -21.457   1.804   0.459 |  -1.903   0.051   0.004
## 3                 |  38.006 |  -1.104   0.005   0.001 |   5.286   0.395   0.019
## 4                 |  37.414 | -18.825   1.388   0.253 |  -5.979   0.505   0.026
## 5                 |  37.978 | -15.383   0.927   0.164 |  -4.275   0.258   0.013
## 6                 |  35.269 | -13.912   0.758   0.156 |  -2.209   0.069   0.004
## 7                 |  36.153 |  -6.805   0.181   0.035 |  10.166   1.460   0.079
## 8                 |  27.758 |  -7.720   0.233   0.077 |  -4.107   0.238   0.022
## 9                 |  34.797 |  -9.891   0.383   0.081 |   7.582   0.812   0.047
## 10                |  49.298 |  12.854   0.647   0.068 |  37.666  20.047   0.584
##                       Dim.3     ctr    cos2  
## 1                 |  -9.013   1.309   0.079 |
## 2                 |  -7.122   0.817   0.051 |
## 3                 |  -5.725   0.528   0.023 |
## 4                 | -13.739   3.042   0.135 |
## 5                 |  -6.809   0.747   0.032 |
## 6                 |  -9.739   1.528   0.076 |
## 7                 |  -6.082   0.596   0.028 |
## 8                 |   0.716   0.008   0.001 |
## 9                 |  -0.149   0.000   0.000 |
## 10                |   9.082   1.329   0.034 |
## 
## Variables (the 10 first)
##                      Dim.1    ctr   cos2    Dim.2    ctr   cos2    Dim.3    ctr
## 168.0777_0.606    | -0.020  0.000  0.000 | -0.847  0.527  0.306 | -0.231  0.045
## 154.0621_0.609    | -0.072  0.001  0.008 | -0.215  0.034  0.071 | -0.084  0.006
## 124.0072_0.616    | -0.091  0.002  0.006 | -0.645  0.305  0.292 | -0.169  0.024
## 193.0351_0.617    |  0.117  0.003  0.057 |  0.231  0.039  0.222 |  0.140  0.016
## 239.1144_0.622    | -0.083  0.001  0.005 | -0.464  0.158  0.151 | -0.119  0.012
## 195.051_0.627     |  0.006  0.000  0.000 |  0.143  0.015  0.137 |  0.026  0.001
## 215.0326_0.629    | -0.050  0.000  0.015 |  0.034  0.001  0.007 |  0.030  0.001
## 219.0457_0.629    |  0.045  0.000  0.003 | -0.136  0.014  0.028 | -0.145  0.018
## 217.0486_0.63     |  0.105  0.002  0.017 | -0.109  0.009  0.019 | -0.130  0.014
## 245.0433_0.63     |  0.062  0.001  0.010 | -0.093  0.006  0.021 | -0.076  0.005
##                     cos2  
## 168.0777_0.606     0.023 |
## 154.0621_0.609     0.011 |
## 124.0072_0.616     0.020 |
## 193.0351_0.617     0.081 |
## 239.1144_0.622     0.010 |
## 195.051_0.627      0.004 |
## 215.0326_0.629     0.006 |
## 219.0457_0.629     0.032 |
## 217.0486_0.63      0.026 |
## 245.0433_0.63      0.014 |
## 
## Supplementary categories (the 10 first)
##                        Dist     Dim.1    cos2  v.test     Dim.2    cos2  v.test
## 6101_U1_C18NEG_59 |  32.088 | -18.325   0.326  -0.827 |  -2.495   0.006  -0.214
## 6101_U2_C18NEG_30 |  35.735 | -11.006   0.095  -0.497 | -11.322   0.100  -0.970
## 6101_U3_C18NEG_29 |  32.042 | -19.088   0.355  -0.861 |  -4.063   0.016  -0.348
## 6101_U4_C18NEG_14 |  33.801 | -17.195   0.259  -0.776 |   0.568   0.000   0.049
## 6102_U1_C18NEG_26 |  31.680 | -21.457   0.459  -0.968 |  -1.903   0.004  -0.163
## 6102_U2_C18NEG_16 |  31.723 | -10.452   0.109  -0.472 |  -7.536   0.056  -0.646
## 6102_U3_C18NEG_48 |  36.424 | -11.925   0.107  -0.538 |   2.968   0.007   0.254
## 6102_U4_C18NEG_50 |  29.347 |  -9.631   0.108  -0.435 |   6.099   0.043   0.523
## 6103_U1_C18NEG_21 |  38.006 |  -1.104   0.001  -0.050 |   5.286   0.019   0.453
## 6103_U2_C18NEG_60 |  41.308 |  -4.739   0.013  -0.214 |  -6.264   0.023  -0.537
##                       Dim.3    cos2  v.test  
## 6101_U1_C18NEG_59 |  -9.013   0.079  -0.825 |
## 6101_U2_C18NEG_30 |  16.477   0.213   1.508 |
## 6101_U3_C18NEG_29 |  -6.642   0.043  -0.608 |
## 6101_U4_C18NEG_14 |  -9.807   0.084  -0.898 |
## 6102_U1_C18NEG_26 |  -7.122   0.051  -0.652 |
## 6102_U2_C18NEG_16 |  18.240   0.331   1.670 |
## 6102_U3_C18NEG_48 |  -3.587   0.010  -0.328 |
## 6102_U4_C18NEG_50 |  -6.357   0.047  -0.582 |
## 6103_U1_C18NEG_21 |  -5.725   0.023  -0.524 |
## 6103_U2_C18NEG_60 |  16.929   0.168   1.550 |
Dist Dim.1 cos2 v.test Dim.2 cos2 v.test Dim.3 cos2 v.test
6101_U1_C18NEG_59 | 32.088 | -18.325 0.326 -0.827 | -2.495 0.006 -0.214 | -9.013 0.079 -0.825 |
6101_U2_C18NEG_30 | 35.735 | -11.006 0.095 -0.497 | -11.322 0.100 -0.970 | 16.477 0.213 1.508 |
6101_U3_C18NEG_29 | 32.042 | -19.088 0.355 -0.861 | -4.063 0.016 -0.348 | -6.642 0.043 -0.608 |
6101_U4_C18NEG_14 | 33.801 | -17.195 0.259 -0.776 | 0.568 0.000 0.049 | -9.807 0.084 -0.898 |
6102_U1_C18NEG_26 | 31.680 | -21.457 0.459 -0.968 | -1.903 0.004 -0.163 | -7.122 0.051 -0.652 |
6102_U2_C18NEG_16 | 31.723 | -10.452 0.109 -0.472 | -7.536 0.056 -0.646 | 18.240 0.331 1.670 |
6102_U3_C18NEG_48 | 36.424 | -11.925 0.107 -0.538 | 2.968 0.007 0.254 | -3.587 0.010 -0.328 |
6102_U4_C18NEG_50 | 29.347 | -9.631 0.108 -0.435 | 6.099 0.043 0.523 | -6.357 0.047 -0.582 |
6103_U1_C18NEG_21 | 38.006 | -1.104 0.001 -0.050 | 5.286 0.019 0.453 | -5.725 0.023 -0.524 |
6103_U2_C18NEG_60 | 41.308 | -4.739 0.013 -0.214 | -6.264 0.023 -0.537 | 16.929 0.168 1.550 |
# pull PC coordinates into df
PC_no6106_QC_log2 <- as.data.frame(PCA.imp_no6106_log2$ind$coord)

# bind back metadata from cols 1-11
PC_no6106_QC_log2 <- bind_cols(imp_no6106_log2[,1:11], PC_no6106_QC_log2)

# grab some variance explained
importance_no6106_QC <- PCA.imp_no6106_log2$eig

# set variance explained with PC1, round to 2 digits
PC1_no6106_withQC <- round(importance_no6106_QC[1,2], 2)

# set variance explained with PC2, round to 2 digits
PC2_no6106_withQC <- round(importance_no6106_QC[2,2], 2)

Plots

Using FactoExtra package

# scree plot
fviz_eig(PCA.imp_no6106_log2)

# scores plot
fviz_pca_ind(PCA.imp_no6106_log2)

Manual scores plot

# manual scores plot
(PCA_no6106_withQCs <- PC_no6106_QC_log2 %>%
  ggplot(aes(x = Dim.1, y = Dim.2,
             fill = factor(Intervention, levels = c("Yellow", "Red", "QC")))) +
  geom_point(shape = 21, alpha = 0.8) +
  scale_fill_manual(values = c("gold", "tomato1", "light grey")) +
  scale_color_manual(values = "black") +  
  theme_minimal() +
  coord_fixed(PC2_no6106_withQC/PC1_no6106_withQC) +
  labs(x = glue::glue("PC1: {PC1_no6106_withQC}%"),
       y = glue::glue("PC2: {PC2_no6106_withQC}%"),
       fill = "Group",
       title = "Principal Components Analysis Scores Plot"))

Because of subject 6106, the pooled QC sample points are quite far from samples.

Without QCs

Wrangle

imp_no6106_log2_noQCs <- imp_metabind_clust_log2 %>%
  filter(Intervention != "QC") %>%
  filter(Subject != "6106")

PCA.imp_no6106_log2_noQCs <- PCA(imp_no6106_log2_noQCs, # wide data
                               quali.sup=1:11, # remove qualitative variables
                               graph=FALSE, # don't graph
                               scale.unit=FALSE) # don't scale, we already did this

# look at summary
kable(summary(PCA.imp_no6106_log2_noQCs))
## 
## Call:
## PCA(X = imp_no6106_log2_noQCs, scale.unit = FALSE, quali.sup = 1:11,  
##      graph = FALSE) 
## 
## 
## Eigenvalues
##                        Dim.1   Dim.2   Dim.3   Dim.4   Dim.5   Dim.6   Dim.7
## Variance             187.189 144.909 119.427 100.210  83.708  72.848  55.450
## % of var.             14.777  11.440   9.428   7.911   6.608   5.751   4.377
## Cumulative % of var.  14.777  26.217  35.645  43.556  50.164  55.915  60.293
##                        Dim.8   Dim.9  Dim.10  Dim.11  Dim.12  Dim.13  Dim.14
## Variance              43.661  41.361  38.384  32.195  28.218  25.965  22.378
## % of var.              3.447   3.265   3.030   2.542   2.228   2.050   1.767
## Cumulative % of var.  63.739  67.005  70.035  72.577  74.804  76.854  78.621
##                       Dim.15  Dim.16  Dim.17  Dim.18  Dim.19  Dim.20  Dim.21
## Variance              21.162  20.528  17.264  15.700  15.575  14.082  12.966
## % of var.              1.671   1.621   1.363   1.239   1.230   1.112   1.024
## Cumulative % of var.  80.291  81.912  83.275  84.514  85.744  86.855  87.879
##                       Dim.22  Dim.23  Dim.24  Dim.25  Dim.26  Dim.27  Dim.28
## Variance              12.630  11.485  10.983   9.951   9.423   9.170   8.559
## % of var.              0.997   0.907   0.867   0.786   0.744   0.724   0.676
## Cumulative % of var.  88.876  89.783  90.650  91.435  92.179  92.903  93.579
##                       Dim.29  Dim.30  Dim.31  Dim.32  Dim.33  Dim.34  Dim.35
## Variance               7.928   7.614   7.072   6.774   6.443   6.108   5.462
## % of var.              0.626   0.601   0.558   0.535   0.509   0.482   0.431
## Cumulative % of var.  94.205  94.806  95.364  95.899  96.407  96.889  97.321
##                       Dim.36  Dim.37  Dim.38  Dim.39  Dim.40  Dim.41  Dim.42
## Variance               5.257   5.136   4.863   4.299   3.994   3.697   3.613
## % of var.              0.415   0.405   0.384   0.339   0.315   0.292   0.285
## Cumulative % of var.  97.736  98.141  98.525  98.864  99.180  99.472  99.757
##                       Dim.43
## Variance               3.080
## % of var.              0.243
## Cumulative % of var. 100.000
## 
## Individuals (the 10 first)
##                        Dist     Dim.1     ctr    cos2     Dim.2     ctr    cos2
## 1                 |  28.465 | -11.080   1.491   0.152 |  -9.026   1.278   0.101
## 2                 |  26.955 | -12.031   1.757   0.199 |  -8.245   1.066   0.094
## 3                 |  38.522 |   7.798   0.738   0.041 |  -5.090   0.406   0.017
## 4                 |  34.338 | -15.275   2.833   0.198 | -12.098   2.295   0.124
## 5                 |  35.646 | -10.572   1.357   0.088 |  -6.256   0.614   0.031
## 6                 |  32.947 |  -7.048   0.603   0.046 |  -8.413   1.110   0.065
## 7                 |  35.348 |   7.424   0.669   0.044 |  -8.796   1.213   0.062
## 8                 |  26.862 |  -3.745   0.170   0.019 |   2.158   0.073   0.006
## 9                 |  33.313 |   3.704   0.167   0.012 |  -3.854   0.233   0.013
## 10                |  51.476 |  43.217  22.676   0.705 |  -3.689   0.213   0.005
##                       Dim.3     ctr    cos2  
## 1                 |  -0.351   0.002   0.000 |
## 2                 |  -6.000   0.685   0.050 |
## 3                 |  24.920  11.817   0.418 |
## 4                 |  -1.030   0.020   0.001 |
## 5                 |  -7.127   0.967   0.040 |
## 6                 |  -4.461   0.379   0.018 |
## 7                 |  14.663   4.091   0.172 |
## 8                 |   3.087   0.181   0.013 |
## 9                 |  -7.605   1.101   0.052 |
## 10                | -13.745   3.595   0.071 |
## 
## Variables (the 10 first)
##                      Dim.1    ctr   cos2    Dim.2    ctr   cos2    Dim.3    ctr
## 168.0777_0.606    | -0.816  0.356  0.242 |  0.146  0.015  0.008 |  0.572  0.274
## 154.0621_0.609    | -0.302  0.049  0.119 | -0.024  0.000  0.001 |  0.095  0.008
## 124.0072_0.616    | -0.754  0.304  0.341 |  0.058  0.002  0.002 |  0.108  0.010
## 193.0351_0.617    |  0.307  0.050  0.336 |  0.059  0.002  0.012 |  0.139  0.016
## 239.1144_0.622    | -0.463  0.114  0.128 |  0.082  0.005  0.004 |  0.458  0.176
## 195.051_0.627     |  0.129  0.009  0.094 | -0.039  0.001  0.009 | -0.048  0.002
## 215.0326_0.629    |  0.003  0.000  0.000 |  0.002  0.000  0.000 | -0.015  0.000
## 219.0457_0.629    | -0.128  0.009  0.022 | -0.071  0.003  0.007 |  0.061  0.003
## 217.0486_0.63     | -0.087  0.004  0.010 | -0.065  0.003  0.006 |  0.101  0.009
## 245.0433_0.63     | -0.071  0.003  0.011 | -0.025  0.000  0.001 | -0.077  0.005
##                     cos2  
## 168.0777_0.606     0.119 |
## 154.0621_0.609     0.012 |
## 124.0072_0.616     0.007 |
## 193.0351_0.617     0.069 |
## 239.1144_0.622     0.125 |
## 195.051_0.627      0.013 |
## 215.0326_0.629     0.001 |
## 219.0457_0.629     0.005 |
## 217.0486_0.63      0.014 |
## 245.0433_0.63      0.013 |
## 
## Supplementary categories (the 10 first)
##                        Dist     Dim.1    cos2  v.test     Dim.2    cos2  v.test
## 6101_U1_C18NEG_59 |  28.465 | -11.080   0.152  -0.810 |  -9.026   0.101  -0.750
## 6101_U2_C18NEG_30 |  34.183 |  -6.956   0.041  -0.508 |  19.045   0.310   1.582
## 6101_U3_C18NEG_29 |  28.133 | -11.824   0.177  -0.864 |  -6.221   0.049  -0.517
## 6101_U4_C18NEG_14 |  30.605 |  -8.045   0.069  -0.588 | -10.664   0.121  -0.886
## 6102_U1_C18NEG_26 |  26.955 | -12.031   0.199  -0.879 |  -8.245   0.094  -0.685
## 6102_U2_C18NEG_16 |  29.988 |  -3.370   0.013  -0.246 |  19.076   0.405   1.585
## 6102_U3_C18NEG_48 |  34.688 |  -2.057   0.004  -0.150 |  -5.481   0.025  -0.455
## 6102_U4_C18NEG_50 |  27.735 |   1.707   0.004   0.125 |  -8.392   0.092  -0.697
## 6103_U1_C18NEG_21 |  38.522 |   7.798   0.041   0.570 |  -5.090   0.017  -0.423
## 6103_U2_C18NEG_60 |  40.997 |   2.434   0.004   0.178 |  19.471   0.226   1.617
##                       Dim.3    cos2  v.test  
## 6101_U1_C18NEG_59 |  -0.351   0.000  -0.032 |
## 6101_U2_C18NEG_30 |   5.136   0.023   0.470 |
## 6101_U3_C18NEG_29 |  -0.457   0.000  -0.042 |
## 6101_U4_C18NEG_14 |   1.819   0.004   0.166 |
## 6102_U1_C18NEG_26 |  -6.000   0.050  -0.549 |
## 6102_U2_C18NEG_16 |   2.085   0.005   0.191 |
## 6102_U3_C18NEG_48 |  -6.202   0.032  -0.568 |
## 6102_U4_C18NEG_50 |   5.317   0.037   0.487 |
## 6103_U1_C18NEG_21 |  24.920   0.418   2.280 |
## 6103_U2_C18NEG_60 |  24.867   0.368   2.275 |
Dist Dim.1 cos2 v.test Dim.2 cos2 v.test Dim.3 cos2 v.test
6101_U1_C18NEG_59 | 28.465 | -11.080 0.152 -0.810 | -9.026 0.101 -0.750 | -0.351 0.000 -0.032 |
6101_U2_C18NEG_30 | 34.183 | -6.956 0.041 -0.508 | 19.045 0.310 1.582 | 5.136 0.023 0.470 |
6101_U3_C18NEG_29 | 28.133 | -11.824 0.177 -0.864 | -6.221 0.049 -0.517 | -0.457 0.000 -0.042 |
6101_U4_C18NEG_14 | 30.605 | -8.045 0.069 -0.588 | -10.664 0.121 -0.886 | 1.819 0.004 0.166 |
6102_U1_C18NEG_26 | 26.955 | -12.031 0.199 -0.879 | -8.245 0.094 -0.685 | -6.000 0.050 -0.549 |
6102_U2_C18NEG_16 | 29.988 | -3.370 0.013 -0.246 | 19.076 0.405 1.585 | 2.085 0.005 0.191 |
6102_U3_C18NEG_48 | 34.688 | -2.057 0.004 -0.150 | -5.481 0.025 -0.455 | -6.202 0.032 -0.568 |
6102_U4_C18NEG_50 | 27.735 | 1.707 0.004 0.125 | -8.392 0.092 -0.697 | 5.317 0.037 0.487 |
6103_U1_C18NEG_21 | 38.522 | 7.798 0.041 0.570 | -5.090 0.017 -0.423 | 24.920 0.418 2.280 |
6103_U2_C18NEG_60 | 40.997 | 2.434 0.004 0.178 | 19.471 0.226 1.617 | 24.867 0.368 2.275 |
# pull PC coordinates into df
PC_coord_no6106_noQC_log2 <- as.data.frame(PCA.imp_no6106_log2_noQCs$ind$coord)

# bind back metadata from cols 1-11
PC_coord_no6106_noQC_log2 <- bind_cols(imp_no6106_log2_noQCs[,1:11], PC_coord_no6106_noQC_log2)

# grab some variance explained
importance_no6106_noQC <- PCA.imp_no6106_log2_noQCs$eig

# set variance explained with PC1, round to 2 digits
PC1_no6106_noQC <- round(importance_no6106_noQC[1,2], 2)

# set variance explained with PC2, round to 2 digits
PC2_no6106_noQC <- round(importance_no6106_noQC[2,2], 2)

Plots

Using FactoExtra

# scree plot
fviz_eig(PCA.imp_no6106_log2_noQCs)

# scores plot
fviz_pca_ind(PCA.imp_no6106_log2_noQCs)

Manual scores plot

(PCA_no6106_withoutQCs <- PC_coord_no6106_noQC_log2 %>%
  ggplot(aes(x = Dim.1, 
             y = Dim.2,
             fill = Intervention)) +
    geom_point(shape = 21, alpha = 0.8) +
    geom_hline(yintercept = 0, linetype = "dashed", alpha=0.5) +
    geom_vline(xintercept = 0, linetype = "dashed", alpha=0.5) +
    scale_fill_manual(values = c("tomato1", "gold")) +
    scale_color_manual(values = "black") +  
    theme_minimal() +
    coord_fixed(PC2_no6106_noQC/PC1_no6106_noQC) +
    labs(x = glue::glue("PC1: {PC1_no6106_noQC}%"),
         y = glue::glue("PC2: {PC2_no6106_noQC}%"),
         fill = "Intervention",
         title = "Principal Components Analysis Scores Plot"))

ggplotly(PCA_no6106_withoutQCs)

Now we’re seeing some separation along PC2! Let’s explore this more with a pub-friendly package for PCAs, the PCAtools package.

PCAtools

W/ Outlier

Data wrangling

# create rel abund df suitable for PCAtools package
imp_clust_omicsdata_outliers_forPCAtools <- as.data.frame(t(imp_clust)) # transpose df 

names(imp_clust_omicsdata_outliers_forPCAtools) <- imp_clust_omicsdata_outliers_forPCAtools[1,] # make sample IDs column names

imp_clust_omicsdata_outliers_forPCAtools <- imp_clust_omicsdata_outliers_forPCAtools[-1,] # remove sample ID row

# create metadata df suitable for PCAtools pckg

metadata_outliers_forPCAtools <- metadata %>%
  column_to_rownames(var = "sample_ID") # change sample ID column to rownames

# create a vector so that col names in abundance df matches metadata df
order_outliers_forPCAtools <- match(rownames(metadata_outliers_forPCAtools), colnames(imp_clust_omicsdata_outliers_forPCAtools))

# reorder col names in abundance df so that it matches metadata
abundata_outliers_reordered_forPCAtools <- imp_clust_omicsdata_outliers_forPCAtools[ ,order_outliers_forPCAtools] 

# change abundance df to numeric
abundata_outliers_reordered_forPCAtools <- abundata_outliers_reordered_forPCAtools %>%
  mutate_all(as.numeric)

# Log transform
log2_abundata_outliers_forPCAtools <- log2(abundata_outliers_reordered_forPCAtools)


# unite pre_post column with intervention column to create pre_intervention column
metadata_outliers_forPCAtools <- metadata_outliers_forPCAtools %>%
  unite(col = "pre_post_intervention",
        c("pre_post","Intervention"),
        sep = "_",
        remove = FALSE)

PCA

# pca
p_outliers <- PCAtools::pca(log2_abundata_outliers_forPCAtools, 
         metadata = metadata_outliers_forPCAtools, 
         scale = FALSE # using scaled data already (log2 transformed)
         
)

(PCAtools_outliers <- biplot(p_outliers,
                               lab = paste0(metadata_outliers_forPCAtools$Subject),
                           colby = 'pre_post_intervention',
                           colkey = c("pre_Yellow" = "yellow",
                                      "post_Yellow" = "yellow4",
                                      "pre_Red" = "red",
                                      "post_Red" = "red4"),
                           hline = 0, vline = 0,
                           legendPosition = 'right',
                           title = "PCA Scores Plot with Loadings",
                           subtitle = "Log2 transformed data, C18 (-), without QCs but with outliers",
                           ellipse = TRUE,
                           ellipseType = 't', # assumes multivariate
                           ellipseLevel = 0.95,
                           ellipseFill = TRUE,
                           ellipseAlpha = 0.2,
                           ellipseLineSize = 0,
                           showLoadings = TRUE))

We see here the top 5 metabolites driving separation along PC1, which is really separation between subject 6106 and the rest of the samples. These metabolites are worth me exploring a bit more as to why subject 6106 is an outlier. Let’s move on and explore the data without outliers more. Confidence ellipses were added to show that 6106 samples are statistical outliers.

No outliers

Data wrangling

# create rel abund df suitable for PCAtools package

imp_clust_omicsdata_forPCAtools <- as.data.frame(t(imp_clust)) # transpose df 

names(imp_clust_omicsdata_forPCAtools) <- imp_clust_omicsdata_forPCAtools[1,] # make sample IDs column names

imp_clust_omicsdata_forPCAtools <- imp_clust_omicsdata_forPCAtools[-1,] # remove sample ID row

imp_clust_omicsdata_forPCAtools <- imp_clust_omicsdata_forPCAtools %>%
  dplyr::select(!contains("QC")) # remove QC observations


# create metadata df suitable for PCAtools pckg

metadata_forPCAtools <- metadata %>%
  column_to_rownames(var = "sample_ID") # change sample ID column to rownames

# create a vector so that col names in abundance df matches metadata df
order_forPCAtools <- match(rownames(metadata_forPCAtools), colnames(imp_clust_omicsdata_forPCAtools))

# reorder col names in abundance df so that it matches metadata
abundata_reordered_forPCAtools <- imp_clust_omicsdata_forPCAtools[ ,order_forPCAtools] 

# change abundance df to numeric
abundata_reordered_forPCAtools <- abundata_reordered_forPCAtools %>%
  mutate_all(as.numeric)

# Log transform
log2_abundata_forPCAtools <- log2(abundata_reordered_forPCAtools)

# remove 6106 subj from both df
log2_abundata_forPCAtools <- log2_abundata_forPCAtools %>%
  dplyr::select(!contains("6106"))

metadata_forPCAtools <- metadata_forPCAtools %>%
  filter(Subject != 6106)

# unite pre_post column with intervention column to create pre_intervention column
metadata_forPCAtools <- metadata_forPCAtools %>%
  unite(col = "pre_post_intervention",
        c("pre_post","Intervention"),
        sep = "_",
        remove = FALSE)

Screeplot

Elbow method

# pca
p <- PCAtools::pca(log2_abundata_forPCAtools, 
         metadata = metadata_forPCAtools, 
         scale = FALSE # using scaled data already (log2 transformed)
         
)

elbow <- findElbowPoint(p$variance)

elbow
## PC8 
##   8
  screeplot(p,
    components = getComponents(p, 1:20),
    vline = elbow) +
    geom_label(aes(x = elbow + 1, y = 50,
      label = 'Elbow method', vjust = -3, size = 8))

How many PCs do we need to capture at least 80% variance?

which(cumsum(p$variance) > 80)[1]
## PC15 
##   15

This shows we’d need quite a few PCs to capture most of the variance. Let’s move on with 2 PCs and explore more later.

PCA plots

w/ stats ellipses

PCAtools::biplot(p,
       lab = paste0(metadata_forPCAtools$Subject),
       colby = 'pre_post_intervention',
       colkey = c("pre_Yellow" = "yellow",
                  "post_Yellow" = "yellow4",
                  "pre_Red" = "red",
                  "post_Red" = "red4"),
       hline = 0, vline = 0,
       # ellipse config
       ellipse = TRUE,
       ellipseType = 't', # assumes multivariate t-distribution
       ellipseLevel = 0.95,
       ellipseFill = TRUE,
       ellipseAlpha = 0.2,
       ellipseLineSize = 0,
       xlim = c(-80,80), ylim = c(-40,40),
       legendPosition = 'right',
       title = "PCA Scores Plot",
       subtitle = "Log2 transformed data, C18 (-), outliers removed, no QCs \n95% confidence level ellipses")

With confidence intervals (Hotelling’s t), most samples are within the intervals except for a few that are not far off. We will move forward.

w/ loadings

Let’s look at the metabolites driving

(PCA.colby.prevspost <- biplot(p,
                               lab = NULL,
                           # or lab = paste0(metadata_forPCAtools$Subject),
                           colby = 'pre_post_intervention',
                           colkey = c("pre_Yellow" = "yellow",
                                      "post_Yellow" = "yellow4",
                                      "pre_Red" = "red",
                                      "post_Red" = "red4"),
                           hline = 0, vline = 0,
                           legendPosition = 'right',
                           title = "PCA Scores Plot",
                           subtitle = "Log2 transformed data, C18 (-), without QCs and outliers",
                           ylim = c(-45,45),
                           showLoadings = TRUE))

Feature 201.0228 at RT 4.555 drives the most separation along PC2 according to this PCA.

Pairs plots

Here, we will look at separations for several components at once using pairs plots.

post-intervention comparisons

(PCA_pairsplot.prevspost <-
  pairsplot(p,
    components = getComponents(p, c(1:10)),
    triangle = TRUE, trianglelabSize = 12,
    hline = 0, vline = 0,
    pointSize = 0.4,
    gridlines.major = FALSE, gridlines.minor = FALSE,
    colby = 'pre_post_intervention', 
    colkey = c("pre_Yellow" = "yellow",
               "post_Yellow" = "yellow4",
               "pre_Red" = "pink",
               "post_Red" = "red4"),
    title = 'Pairs plot', plotaxes = FALSE,
    margingaps = unit(c(-0.01, -0.01, -0.01, -0.01), 'cm')))

sex?

Are there any obvious clusterings when colored by sex?

  pairsplot(p,
    components = getComponents(p, c(1:10)),
    triangle = TRUE, trianglelabSize = 12,
    hline = 0, vline = 0,
    pointSize = 0.4,
    gridlines.major = FALSE, gridlines.minor = FALSE,
    colby = 'Sex', 
    colkey = c("M" = "red",
               "F" = "purple"),
    title = 'Pairs plot', plotaxes = FALSE,
    margingaps = unit(c(-0.01, -0.01, -0.01, -0.01), 'cm'))

sequence?

  pairsplot(p,
    components = getComponents(p, c(1:10)),
    triangle = TRUE, trianglelabSize = 12,
    hline = 0, vline = 0,
    pointSize = 0.4,
    gridlines.major = FALSE, gridlines.minor = FALSE,
    colby = 'sequence',
    title = 'Pairs plot', plotaxes = FALSE,
    margingaps = unit(c(-0.01, -0.01, -0.01, -0.01), 'cm'))

Eigen corplots

This is a cool way to explore the correlations between the metadata and the PCs! I want to look at how the metavariables correlate with PCs that account for 80% variation in the dataset.

Again: How many PCs do we need to capture at least 80% variance?

which(cumsum(p$variance) > 80)[1]
## PC15 
##   15
  eigencorplot(p,
    components = getComponents(p, 1:which(cumsum(p$variance) > 80)[1]), # get components that account for 80% variance
    metavars = colnames(metadata_forPCAtools),
    col = c('darkblue', 'blue2', 'gray', 'red2', 'darkred'),
    cexCorval = 0.7,
    colCorval = 'white',
    fontCorval = 2,
    posLab = 'bottomleft',
    rotLabX = 45,
    posColKey = 'top',
    cexLabColKey = 1.5,
    scale = TRUE,
    main = 'PC1-15 metadata correlations',
    colFrame = 'white',
    plotRsquared = FALSE)

  eigencorplot(p,
    components = getComponents(p, 1:which(cumsum(p$variance) > 80)[1]),
    metavars = colnames(metadata_forPCAtools),
    col = c('white', 'cornsilk1', 'gold', 'forestgreen', 'darkgreen'),
    cexCorval = 1.2,
    fontCorval = 2,
    posLab = 'all',
    rotLabX = 45,
    scale = TRUE,
    main = bquote(Principal ~ component ~ Pearson ~ r^2 ~ metadata ~ correlates),
    plotRsquared = TRUE,
    corFUN = 'pearson',
    corUSE = 'pairwise.complete.obs',
    corMultipleTestCorrection = 'BH',
    signifSymbols = c('****', '***', '**', '*', ''),
    signifCutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 1))

I am most interested in PCs affected by pre_post_intervention, so I think it would be good to investigate the metabolites that contribute the most to these PCs.

Multilevel PCA

Because this is a crossover trial, measurements are taken from the same person repeatedly and thus introduces variance not dependent on the treatment but the subject. To account for interindividual variations in MVA, I try multilevel PCAs from the mixOmics package. Here, I do not remove subject 6106.

library(mixOmics)
# make df suitable for mixOmics
Data_forMPCA <- imp_metabind_clust_log2_noQCs %>%
  mutate_at("Subject", as.factor) # change subject id to factor
 

summary(as.factor(Data_forMPCA$Subject))
## 6101 6102 6103 6104 6105 6106 6108 6109 6110 6111 6112 6113 
##    4    4    4    4    4    4    4    4    4    4    4    4
# make a vector for meta variables
(metavar <- Data_forMPCA[,c(1:11)] %>%
    colnames())
##  [1] "sample_ID"             "Subject"               "Period"               
##  [4] "pre_post_intervention" "Intervention"          "pre_post"             
##  [7] "sequence"              "Intervention_week"     "Sex"                  
## [10] "Age"                   "BMI"

Regular scores plot

mixOmicsPCA.result <- mixOmics::pca(Data_forMPCA[,!names(Data_forMPCA) %in% metavar],
                            scale = FALSE,
                            center = FALSE)

plotIndiv(mixOmicsPCA.result, 
          ind.names = Data_forMPCA$Subject, 
          group = Data_forMPCA$pre_post_intervention, 
          legend = TRUE, 
          legend.title = "Treatment", 
          title = 'Regular PCA, C18 (-), Log2 transformed')

We see the same thing we’ve been seeing with 6106 overwhelming PC2. Let’s try the multilevel pca and see what happens!

Multilevel scores plot

multilevelPCA.result <- mixOmics::pca(Data_forMPCA[,-(c(1:11))], 
                            multilevel = Data_forMPCA$Subject,
                            scale = FALSE,
                            center = FALSE)

plotIndiv(multilevelPCA.result, 
          ind.names = Data_forMPCA$Subject, 
          group = Data_forMPCA$pre_post_intervention, 
          legend = TRUE, 
          legend.title = "Treatment", 
          title = 'Multilevel PCA, C18 (-), Log2 transformed')

Now, even with 6106 still included, we see clear separation between post-Red and other timepoints! Let’s take a look at a loadings plot to see the top 40 features that contribute to PC1 separation.

Loadings

plotLoadings(multilevelPCA.result, ndisplay = 40)

Feature 201.0228 still is the top driver of separation. More digging into PCA/MVA to come!

Univariate analysis

Wrangle data

# use tidy data 
head(imp_metabind_clust_tidy_log2)
## # A tibble: 6 × 14
##   sample_ID  Subject Period pre_post_intervention Intervention pre_post sequence
##   <chr>      <chr>   <chr>  <chr>                 <chr>        <chr>    <chr>   
## 1 6101_U1_C… 6101    U1     pre_Red               Red          pre      R_Y     
## 2 6101_U1_C… 6101    U1     pre_Red               Red          pre      R_Y     
## 3 6101_U1_C… 6101    U1     pre_Red               Red          pre      R_Y     
## 4 6101_U1_C… 6101    U1     pre_Red               Red          pre      R_Y     
## 5 6101_U1_C… 6101    U1     pre_Red               Red          pre      R_Y     
## 6 6101_U1_C… 6101    U1     pre_Red               Red          pre      R_Y     
## # ℹ 7 more variables: Intervention_week <chr>, Sex <chr>, Age <chr>, BMI <chr>,
## #   mz_rt <chr>, rel_abund <dbl>, rel_abund_log2 <dbl>
# remove QCs
df_for_stats <- imp_metabind_clust_tidy_log2 %>%
  filter(Intervention != "QC")

# check if QCs were removed
unique(df_for_stats$Intervention)
## [1] "Red"    "Yellow"
# df without outlier 6106
df_for_stats_noOutlier <- df_for_stats %>%
  filter(Subject != "6106")

# check if outlier was removed
unique(df_for_stats_noOutlier$Subject)
##  [1] "6101" "6102" "6103" "6104" "6105" "6108" "6109" "6110" "6111" "6112"
## [11] "6113"
# turn off sci notation outputs
options(scipen = 999)

Parametric tests

ANOVA (repeated measures) across timepoints

anova_outpout_df <- df_for_stats_noOutlier %>% 
  dplyr::select(Subject, pre_post_intervention, mz_rt, rel_abund_log2) %>%
  group_by(mz_rt) %>%
  anova_test(rel_abund_log2 ~ pre_post_intervention, wid = Subject,
             detailed = TRUE) %>%
  adjust_pvalue(method = "BH") %>%
  as.data.frame()

anova_sig <- anova_outpout_df %>%
  filter(p.adj <= .05)

# how many significant features?
nrow(anova_sig)
## [1] 43

Heatmap of features significant by ANOVA

# go back to wide for stats df
df_for_stats_wide_noOutlier <- df_for_stats_noOutlier %>%
  dplyr::select(!rel_abund) %>%
  pivot_wider(names_from = mz_rt,
              values_from = rel_abund_log2)

ANOVA_heatmap_data <- df_for_stats_wide_noOutlier %>%
  unite("Subject_pre_post_intervention", Subject, pre_post_intervention, sep = "_", remove = FALSE) %>%
  dplyr::select(Subject, Subject_pre_post_intervention, pre_post, all_of(anova_sig$mz_rt))


ANOVA_heatmap <- 
  pheatmap(ANOVA_heatmap_data[,-c(1:3)],
           scale = "column",
           cluster_rows = TRUE,
           clustering_distance_rows = "euclidean",
           clustering_distance_cols = "euclidean",
           clustering_method = "ward.D2",
           labels_row = ANOVA_heatmap_data$Subject_pre_post_intervention,
           color = colorRampPalette(c("#67a9cf", "#f7f7f7", "#ef8a62"))(16),
           main = "Heatmap of features significant across timepoints \nby repeated measures one-way ANOVA \nBenjamoni-Hochberg corrected p-values > 0.05 \nC18 (-)")

ggsave(plot = ANOVA_heatmap, height = 20, width = 12,
       filename = "plots and figures/ANOVA_sig_heatmap.svg")

Paired t tests

Here, I am comparing pre- to post-intervention for both yellow and tomato soy (Red) juice interventions. I also compare post-yellow to post-red intervention. I am using the log transformed values of rel abundance since parametric tests assume normality.

Ctrl

# run paired t-tests for control intervention
ctrl_t.test_paired <- df_for_stats %>%
  filter(Intervention == "Yellow") %>%
  dplyr::select(Subject, pre_post, mz_rt, rel_abund_log2) %>%
  group_by(mz_rt) %>%
  t_test(rel_abund_log2 ~ pre_post, 
         paired = TRUE, 
         p.adjust.method = "BH") %>% # Benjamini-Hochberg controlling to lower false positives
  add_significance()

Statistically significant features

# which features are significant?
ctrl_t.test_paired_sig <- ctrl_t.test_paired %>%
  filter(p <= 0.05)
kable(ctrl_t.test_paired_sig)
mz_rt .y. group1 group2 n1 n2 statistic df p p.signif
131.0349_0.8 rel_abund_log2 post pre 12 12 -2.461404 11 0.0316000 *
144.03_0.697 rel_abund_log2 post pre 12 12 -2.225323 11 0.0479000 *
144.0665_0.781 rel_abund_log2 post pre 12 12 -4.136737 11 0.0016500 **
154.0621_0.609 rel_abund_log2 post pre 12 12 -3.620947 11 0.0040200 **
154.9984_0.703 rel_abund_log2 post pre 12 12 -3.227300 11 0.0080500 **
157.0506_2.959 rel_abund_log2 post pre 12 12 -3.119834 11 0.0097500 **
168.0777_0.606 rel_abund_log2 post pre 12 12 -3.356714 11 0.0064000 **
177.0225_0.776 rel_abund_log2 post pre 12 12 -4.172454 11 0.0015600 **
178.0524_2.721 rel_abund_log2 post pre 12 12 2.242762 11 0.0465000 *
185.0819_4.129 rel_abund_log2 post pre 12 12 -2.975798 11 0.0126000 *
188.0021_0.665 rel_abund_log2 post pre 12 12 -2.629418 11 0.0234000 *
191.0201_1.159 rel_abund_log2 post pre 12 12 2.457882 11 0.0318000 *
193.0353_5.465 rel_abund_log2 post pre 12 12 -2.477664 11 0.0307000 *
197.0819_4.344 rel_abund_log2 post pre 12 12 -2.405456 11 0.0349000 *
198.1135_5.021 rel_abund_log2 post pre 12 12 -3.259088 11 0.0076100 **
208.0646_0.766 rel_abund_log2 post pre 12 12 -2.407311 11 0.0348000 *
212.0065_4.503 rel_abund_log2 post pre 12 12 -5.338144 11 0.0002380 ***
215.0021_3.307 rel_abund_log2 post pre 12 12 4.806060 11 0.0005480 ***
217.0486_0.63 rel_abund_log2 post pre 12 12 -4.509173 11 0.0008880 ***
217.1081_3.912 rel_abund_log2 post pre 12 12 -2.700100 11 0.0207000 *
218.0492_0.684 rel_abund_log2 post pre 12 12 -2.243466 11 0.0464000 *
219.0457_0.629 rel_abund_log2 post pre 12 12 -2.750307 11 0.0189000 *
222.1134_5.811 rel_abund_log2 post pre 12 12 -4.879452 11 0.0004870 ***
230.9963_3.838 rel_abund_log2 post pre 12 12 3.581533 11 0.0043100 **
230.9968_3.178 rel_abund_log2 post pre 12 12 3.181807 11 0.0087300 **
230.9969_3.457 rel_abund_log2 post pre 12 12 5.649514 11 0.0001490 ***
231.9926_0.79 rel_abund_log2 post pre 12 12 -2.845334 11 0.0159000 *
235.057_0.641 rel_abund_log2 post pre 12 12 -2.931184 11 0.0137000 *
239.1144_0.622 rel_abund_log2 post pre 12 12 -2.576189 11 0.0258000 *
240.9816_3.419 rel_abund_log2 post pre 12 12 3.923128 11 0.0023800 **
241.1189_3.536 rel_abund_log2 post pre 12 12 -2.408506 11 0.0347000 *
241.1193_2.896 rel_abund_log2 post pre 12 12 -2.671427 11 0.0217000 *
243.1344_3.787 rel_abund_log2 post pre 12 12 -2.834514 11 0.0162000 *
243.1349_3.353 rel_abund_log2 post pre 12 12 -3.345652 11 0.0065300 **
246.0753_3.721 rel_abund_log2 post pre 12 12 -2.692257 11 0.0209000 *
246.1531_5.399 rel_abund_log2 post pre 12 12 -2.673427 11 0.0217000 *
253.9903_0.661 rel_abund_log2 post pre 12 12 -3.090685 11 0.0103000 *
255.1349_3.614 rel_abund_log2 post pre 12 12 -2.295478 11 0.0424000 *
255.1349_4.042 rel_abund_log2 post pre 12 12 -2.306841 11 0.0415000 *
263.0272_2.81 rel_abund_log2 post pre 12 12 2.449753 11 0.0323000 *
264.9884_0.68 rel_abund_log2 post pre 12 12 -2.661654 11 0.0221000 *
269.1505_4.575 rel_abund_log2 post pre 12 12 -6.293448 11 0.0000589 ****
269.1506_4.275 rel_abund_log2 post pre 12 12 -6.630859 11 0.0000371 ****
274.0396_0.676 rel_abund_log2 post pre 12 12 -2.396063 11 0.0355000 *
274.039_0.769 rel_abund_log2 post pre 12 12 -3.469477 11 0.0052400 **
281.1142_4.039 rel_abund_log2 post pre 12 12 -3.592610 11 0.0042200 **
287.0526_0.66 rel_abund_log2 post pre 12 12 -2.282729 11 0.0433000 *
299.1247_0.784 rel_abund_log2 post pre 12 12 -5.775087 11 0.0001240 ***
300.039_0.661 rel_abund_log2 post pre 12 12 -2.952846 11 0.0131000 *
302.1145_3.69 rel_abund_log2 post pre 12 12 -2.989428 11 0.0123000 *
305.1604_5.512 rel_abund_log2 post pre 12 12 -2.204836 11 0.0497000 *
310.9691_1.162 rel_abund_log2 post pre 12 12 2.470283 11 0.0311000 *
319.1032_0.789 rel_abund_log2 post pre 12 12 -2.852395 11 0.0157000 *
319.1396_5.493 rel_abund_log2 post pre 12 12 -2.373604 11 0.0369000 *
324.0723_0.776 rel_abund_log2 post pre 12 12 -2.566481 11 0.0262000 *
336.072_3.762 rel_abund_log2 post pre 12 12 -2.339190 11 0.0392000 *
336.1214_3.081 rel_abund_log2 post pre 12 12 -3.104779 11 0.0100000 **
337.0556_0.777 rel_abund_log2 post pre 12 12 3.076820 11 0.0105000 *
337.056_3.104 rel_abund_log2 post pre 12 12 3.143328 11 0.0093500 **
345.1552_6.009 rel_abund_log2 post pre 12 12 -3.309655 11 0.0069600 **
345.1553_5.874 rel_abund_log2 post pre 12 12 -3.653538 11 0.0038000 **
350.088_3.366 rel_abund_log2 post pre 12 12 -3.160283 11 0.0090700 **
350.088_3.952 rel_abund_log2 post pre 12 12 -3.124386 11 0.0096700 **
354.1007_4.717 rel_abund_log2 post pre 12 12 -3.341329 11 0.0065800 **
354.1009_5.03 rel_abund_log2 post pre 12 12 -2.980159 11 0.0125000 *
361.1501_4.225 rel_abund_log2 post pre 12 12 -3.443159 11 0.0054900 **
363.1657_4.345 rel_abund_log2 post pre 12 12 -2.520770 11 0.0284000 *
366.1016_4.846 rel_abund_log2 post pre 12 12 -2.373982 11 0.0369000 *
367.2236_4.071 rel_abund_log2 post pre 12 12 -2.605583 11 0.0244000 *
369.1552_5.993 rel_abund_log2 post pre 12 12 -3.862090 11 0.0026400 **
369.1737_6.099 rel_abund_log2 post pre 12 12 -2.239345 11 0.0468000 *
370.097_3.208 rel_abund_log2 post pre 12 12 -2.414807 11 0.0343000 *
370.0981_3.747 rel_abund_log2 post pre 12 12 -2.508531 11 0.0291000 *
372.1099_3.404 rel_abund_log2 post pre 12 12 -2.869688 11 0.0153000 *
372.1116_3.914 rel_abund_log2 post pre 12 12 -4.440271 11 0.0009950 ***
375.1294_4.074 rel_abund_log2 post pre 12 12 -3.421851 11 0.0057000 **
385.1498_5.181 rel_abund_log2 post pre 12 12 -6.953732 11 0.0000241 ****
385.1685_4.355 rel_abund_log2 post pre 12 12 -2.222944 11 0.0481000 *
387.1489_5.77 rel_abund_log2 post pre 12 12 -2.981651 11 0.0125000 *
389.0981_4.564 rel_abund_log2 post pre 12 12 -2.232397 11 0.0473000 *
393.2643_6.229 rel_abund_log2 post pre 12 12 -2.492934 11 0.0299000 *
400.1429_4.669 rel_abund_log2 post pre 12 12 -2.214383 11 0.0488000 *
403.1971_3.26 rel_abund_log2 post pre 12 12 2.535363 11 0.0277000 *
403.197_0.807 rel_abund_log2 post pre 12 12 3.049801 11 0.0111000 *
413.1436_3.2 rel_abund_log2 post pre 12 12 2.338890 11 0.0392000 *
418.1327_4.164 rel_abund_log2 post pre 12 12 -2.471681 11 0.0310000 *
424.0493_0.721 rel_abund_log2 post pre 12 12 -3.444872 11 0.0054800 **
425.145_4.374 rel_abund_log2 post pre 12 12 -2.505174 11 0.0292000 *
443.1557_5.98 rel_abund_log2 post pre 12 12 -2.404597 11 0.0349000 *
446.2907_6.081 rel_abund_log2 post pre 12 12 -2.202775 11 0.0498000 *
447.0919_4.504 rel_abund_log2 post pre 12 12 4.490515 11 0.0009150 ***
447.0921_4.067 rel_abund_log2 post pre 12 12 3.953049 11 0.0022600 **
447.092_4.187 rel_abund_log2 post pre 12 12 2.793693 11 0.0175000 *
462.1766_4.998 rel_abund_log2 post pre 12 12 -2.601817 11 0.0246000 *
464.0663_2.822 rel_abund_log2 post pre 12 12 3.187185 11 0.0086500 **
465.2493_6.146 rel_abund_log2 post pre 12 12 -2.876169 11 0.0151000 *
481.2439_5.242 rel_abund_log2 post pre 12 12 -2.633719 11 0.0233000 *
496.198_6.048 rel_abund_log2 post pre 12 12 -2.317192 11 0.0408000 *
499.0756_0.705 rel_abund_log2 post pre 12 12 3.107461 11 0.0099700 **
509.2751_5.084 rel_abund_log2 post pre 12 12 -3.310485 11 0.0069500 **
509.2751_6.332 rel_abund_log2 post pre 12 12 -2.868766 11 0.0153000 *
514.136_3.993 rel_abund_log2 post pre 12 12 -2.752558 11 0.0188000 *
528.2633_5.962 rel_abund_log2 post pre 12 12 -2.378530 11 0.0366000 *
541.2651_4.807 rel_abund_log2 post pre 12 12 -2.543890 11 0.0273000 *
541.265_4.928 rel_abund_log2 post pre 12 12 -2.271880 11 0.0442000 *
572.2528_4.339 rel_abund_log2 post pre 12 12 -3.083599 11 0.0104000 *
600.2843_4.732 rel_abund_log2 post pre 12 12 -3.348925 11 0.0064900 **
613.3589_5.89 rel_abund_log2 post pre 12 12 -2.670162 11 0.0218000 *
629.3537_5.37 rel_abund_log2 post pre 12 12 -3.064920 11 0.0108000 *
636.1806_3.455 rel_abund_log2 post pre 12 12 -2.560241 11 0.0265000 *
# how many are significant?
nrow(ctrl_t.test_paired_sig)
## [1] 110

Ctrl - no outlier

# run paired t-tests for control intervention
ctrl_noOutlier_t.test_paired <- df_for_stats_noOutlier %>%
  filter(Intervention == "Yellow") %>%
  dplyr::select(Subject, pre_post, mz_rt, rel_abund_log2) %>%
  group_by(mz_rt) %>%
  t_test(rel_abund_log2 ~ pre_post, 
         paired = TRUE, 
         p.adjust.method = "BH") %>% # Benjamini-Hochberg controlling to lower false positives
  add_significance()

Statistically significant features

# which features are significant?
ctrl_noOutlier_t.test_paired_sig <- ctrl_noOutlier_t.test_paired %>%
  filter(p <= 0.05)
kable(ctrl_noOutlier_t.test_paired_sig)
mz_rt .y. group1 group2 n1 n2 statistic df p p.signif
144.03_0.697 rel_abund_log2 post pre 11 11 -2.285890 10 0.0453000 *
144.0665_0.781 rel_abund_log2 post pre 11 11 -4.220806 10 0.0017700 **
154.0621_0.609 rel_abund_log2 post pre 11 11 -3.543489 10 0.0053300 **
154.9984_0.703 rel_abund_log2 post pre 11 11 -2.805096 10 0.0186000 *
157.0506_2.959 rel_abund_log2 post pre 11 11 -2.712416 10 0.0218000 *
168.0777_0.606 rel_abund_log2 post pre 11 11 -2.925426 10 0.0152000 *
177.0225_0.776 rel_abund_log2 post pre 11 11 -3.702294 10 0.0040900 **
182.0282_0.77 rel_abund_log2 post pre 11 11 2.493735 10 0.0318000 *
185.0819_4.129 rel_abund_log2 post pre 11 11 -2.576161 10 0.0276000 *
188.0021_0.665 rel_abund_log2 post pre 11 11 -2.442009 10 0.0347000 *
191.0201_1.159 rel_abund_log2 post pre 11 11 2.454586 10 0.0340000 *
193.0353_5.465 rel_abund_log2 post pre 11 11 -2.403408 10 0.0371000 *
198.1135_5.021 rel_abund_log2 post pre 11 11 -2.876288 10 0.0165000 *
212.0065_4.503 rel_abund_log2 post pre 11 11 -4.840716 10 0.0006810 ***
215.0021_3.307 rel_abund_log2 post pre 11 11 4.651521 10 0.0009060 ***
217.0486_0.63 rel_abund_log2 post pre 11 11 -4.155849 10 0.0019600 **
217.1081_3.912 rel_abund_log2 post pre 11 11 -2.307828 10 0.0437000 *
218.0492_0.684 rel_abund_log2 post pre 11 11 -2.678661 10 0.0231000 *
219.0457_0.629 rel_abund_log2 post pre 11 11 -2.443180 10 0.0347000 *
222.1134_5.811 rel_abund_log2 post pre 11 11 -4.446102 10 0.0012400 **
230.9963_3.838 rel_abund_log2 post pre 11 11 3.246327 10 0.0087700 **
230.9968_3.178 rel_abund_log2 post pre 11 11 2.757680 10 0.0202000 *
230.9969_3.457 rel_abund_log2 post pre 11 11 5.185649 10 0.0004100 ***
231.9926_0.79 rel_abund_log2 post pre 11 11 -2.441984 10 0.0347000 *
235.057_0.641 rel_abund_log2 post pre 11 11 -2.517797 10 0.0305000 *
240.9816_3.419 rel_abund_log2 post pre 11 11 3.896096 10 0.0029800 **
241.1193_2.896 rel_abund_log2 post pre 11 11 -2.268062 10 0.0467000 *
243.1344_3.787 rel_abund_log2 post pre 11 11 -2.433479 10 0.0352000 *
243.1349_3.353 rel_abund_log2 post pre 11 11 -2.933145 10 0.0150000 *
246.0753_3.721 rel_abund_log2 post pre 11 11 -2.721525 10 0.0215000 *
246.1531_5.399 rel_abund_log2 post pre 11 11 -2.478294 10 0.0326000 *
253.9903_0.661 rel_abund_log2 post pre 11 11 -3.283821 10 0.0082400 **
264.9884_0.68 rel_abund_log2 post pre 11 11 -2.561411 10 0.0283000 *
267.1235_7.063 rel_abund_log2 post pre 11 11 2.609438 10 0.0261000 *
269.1505_4.575 rel_abund_log2 post pre 11 11 -5.779048 10 0.0001780 ***
269.1506_4.275 rel_abund_log2 post pre 11 11 -5.999654 10 0.0001320 ***
274.0396_0.676 rel_abund_log2 post pre 11 11 -2.253681 10 0.0479000 *
274.039_0.769 rel_abund_log2 post pre 11 11 -3.305777 10 0.0079400 **
281.1142_4.039 rel_abund_log2 post pre 11 11 -3.150143 10 0.0103000 *
287.0227_3.548 rel_abund_log2 post pre 11 11 -2.635784 10 0.0249000 *
297.0975_4.498 rel_abund_log2 post pre 11 11 -2.506894 10 0.0311000 *
299.1247_0.784 rel_abund_log2 post pre 11 11 -6.018921 10 0.0001290 ***
300.039_0.661 rel_abund_log2 post pre 11 11 -2.539255 10 0.0294000 *
302.1145_3.69 rel_abund_log2 post pre 11 11 -2.715408 10 0.0217000 *
310.9691_1.162 rel_abund_log2 post pre 11 11 2.935762 10 0.0149000 *
319.1032_0.789 rel_abund_log2 post pre 11 11 -2.912620 10 0.0155000 *
324.0723_0.776 rel_abund_log2 post pre 11 11 -2.234646 10 0.0495000 *
336.1214_3.081 rel_abund_log2 post pre 11 11 -2.831634 10 0.0178000 *
337.0556_0.777 rel_abund_log2 post pre 11 11 2.859345 10 0.0170000 *
337.056_3.104 rel_abund_log2 post pre 11 11 3.172896 10 0.0099400 **
345.1552_6.009 rel_abund_log2 post pre 11 11 -3.023647 10 0.0128000 *
345.1553_5.874 rel_abund_log2 post pre 11 11 -3.347115 10 0.0074000 **
350.088_3.366 rel_abund_log2 post pre 11 11 -2.922181 10 0.0152000 *
350.088_3.952 rel_abund_log2 post pre 11 11 -2.915616 10 0.0154000 *
354.1007_4.717 rel_abund_log2 post pre 11 11 -2.911973 10 0.0155000 *
354.1009_5.03 rel_abund_log2 post pre 11 11 -2.607041 10 0.0262000 *
361.1501_4.225 rel_abund_log2 post pre 11 11 -3.399428 10 0.0067800 **
363.1657_4.345 rel_abund_log2 post pre 11 11 -2.477080 10 0.0327000 *
367.2236_4.071 rel_abund_log2 post pre 11 11 -2.368831 10 0.0394000 *
369.1552_5.993 rel_abund_log2 post pre 11 11 -3.741100 10 0.0038400 **
372.1099_3.404 rel_abund_log2 post pre 11 11 -2.587993 10 0.0270000 *
372.1116_3.914 rel_abund_log2 post pre 11 11 -3.964124 10 0.0026700 **
375.1294_4.074 rel_abund_log2 post pre 11 11 -2.987505 10 0.0136000 *
385.1498_5.181 rel_abund_log2 post pre 11 11 -6.316287 10 0.0000872 ****
385.1685_4.355 rel_abund_log2 post pre 11 11 -2.247770 10 0.0484000 *
387.1489_5.77 rel_abund_log2 post pre 11 11 -2.774909 10 0.0196000 *
389.0981_4.564 rel_abund_log2 post pre 11 11 -2.501829 10 0.0313000 *
393.2643_6.229 rel_abund_log2 post pre 11 11 -2.248175 10 0.0483000 *
403.1971_3.26 rel_abund_log2 post pre 11 11 2.296263 10 0.0445000 *
403.197_0.807 rel_abund_log2 post pre 11 11 3.529688 10 0.0054500 **
413.1436_3.2 rel_abund_log2 post pre 11 11 2.380349 10 0.0386000 *
424.0493_0.721 rel_abund_log2 post pre 11 11 -3.169279 10 0.0100000 **
425.145_4.374 rel_abund_log2 post pre 11 11 -2.852678 10 0.0172000 *
447.0919_4.504 rel_abund_log2 post pre 11 11 4.046660 10 0.0023400 **
447.0921_4.067 rel_abund_log2 post pre 11 11 4.041824 10 0.0023500 **
447.092_4.187 rel_abund_log2 post pre 11 11 2.827069 10 0.0179000 *
464.0663_2.822 rel_abund_log2 post pre 11 11 2.983888 10 0.0137000 *
465.2493_6.146 rel_abund_log2 post pre 11 11 -2.463089 10 0.0335000 *
481.2439_5.242 rel_abund_log2 post pre 11 11 -2.520135 10 0.0304000 *
496.198_6.048 rel_abund_log2 post pre 11 11 -2.370839 10 0.0392000 *
499.0756_0.705 rel_abund_log2 post pre 11 11 2.710151 10 0.0219000 *
509.2751_5.084 rel_abund_log2 post pre 11 11 -2.989133 10 0.0136000 *
509.2751_6.332 rel_abund_log2 post pre 11 11 -2.464232 10 0.0334000 *
514.136_3.993 rel_abund_log2 post pre 11 11 -2.391987 10 0.0378000 *
528.2633_5.962 rel_abund_log2 post pre 11 11 -2.784253 10 0.0193000 *
541.2651_4.807 rel_abund_log2 post pre 11 11 -2.830511 10 0.0178000 *
541.265_4.928 rel_abund_log2 post pre 11 11 -2.864772 10 0.0168000 *
572.2528_4.339 rel_abund_log2 post pre 11 11 -3.222185 10 0.0091400 **
576.1384_0.705 rel_abund_log2 post pre 11 11 2.735908 10 0.0210000 *
600.2843_4.732 rel_abund_log2 post pre 11 11 -3.527558 10 0.0054700 **
613.3589_5.89 rel_abund_log2 post pre 11 11 -2.308321 10 0.0436000 *
629.3537_5.37 rel_abund_log2 post pre 11 11 -2.773299 10 0.0197000 *
636.1806_3.455 rel_abund_log2 post pre 11 11 -2.448178 10 0.0344000 *
# how many are significant?
nrow(ctrl_noOutlier_t.test_paired_sig)
## [1] 93
Mummichog list
yel_for_mummichog <- ctrl_noOutlier_t.test_paired %>%
  dplyr::select(mz_rt,
         p,
         statistic) %>%
  separate(col = mz_rt,
           into = c("m/z", "rt"),
           sep = "_") %>%
  rename("p-value" = "p") %>%
  rename("t-score" = "statistic")

write_csv(yel_for_mummichog,
          "yelcomp-mummichog-list-c18neg.csv")

Red

# run paired t-tests for control intervention
red_t.test_paired <- df_for_stats %>%
  filter(Intervention == "Red") %>%
  dplyr::select(Subject, pre_post, mz_rt, rel_abund_log2) %>%
  group_by(mz_rt) %>%
  t_test(rel_abund_log2 ~ pre_post, 
         paired = TRUE, 
         p.adjust.method = "BH") %>% # Benjamini-Hochberg controlling to lower false positives
  add_significance()

Statistically significant features

# which features are significant?
red_t.test_paired_sig <- red_t.test_paired %>%
  filter(p <= 0.05)
kable(red_t.test_paired_sig)
mz_rt .y. group1 group2 n1 n2 statistic df p p.signif
1122.0248_4.125 rel_abund_log2 post pre 12 12 17.060205 11 0.0000000 ****
1122.0249_4.032 rel_abund_log2 post pre 12 12 13.546362 11 0.0000000 ****
168.0302_2.597 rel_abund_log2 post pre 12 12 3.008485 11 0.0119000 *
174.0405_0.655 rel_abund_log2 post pre 12 12 -2.342576 11 0.0390000 *
187.0383_0.634 rel_abund_log2 post pre 12 12 -2.870653 11 0.0152000 *
195.051_0.627 rel_abund_log2 post pre 12 12 -3.036992 11 0.0113000 *
199.0068_4.328 rel_abund_log2 post pre 12 12 3.072751 11 0.0106000 *
201.0227_4.086 rel_abund_log2 post pre 12 12 15.310096 11 0.0000000 ****
201.0228_4.555 rel_abund_log2 post pre 12 12 16.566658 11 0.0000000 ****
203.0021_0.801 rel_abund_log2 post pre 12 12 2.248025 11 0.0460000 *
208.0615_3.836 rel_abund_log2 post pre 12 12 -3.159004 11 0.0091000 **
209.0532_3.773 rel_abund_log2 post pre 12 12 -2.217854 11 0.0485000 *
211.0611_3.158 rel_abund_log2 post pre 12 12 -2.937554 11 0.0135000 *
215.0021_3.307 rel_abund_log2 post pre 12 12 7.649012 11 0.0000100 ****
217.0172_4.4 rel_abund_log2 post pre 12 12 5.889523 11 0.0001050 ***
217.0173_3.88 rel_abund_log2 post pre 12 12 3.774771 11 0.0030700 **
218.0821_5.22 rel_abund_log2 post pre 12 12 -2.998352 11 0.0121000 *
223.0623_0.802 rel_abund_log2 post pre 12 12 -2.597176 11 0.0248000 *
230.9967_0.757 rel_abund_log2 post pre 12 12 2.995785 11 0.0122000 *
230.9968_3.178 rel_abund_log2 post pre 12 12 2.284174 11 0.0432000 *
232.9759_0.708 rel_abund_log2 post pre 12 12 3.748385 11 0.0032200 **
235.057_0.641 rel_abund_log2 post pre 12 12 -2.738905 11 0.0193000 *
238.0776_4.607 rel_abund_log2 post pre 12 12 -2.413731 11 0.0344000 *
246.0753_3.721 rel_abund_log2 post pre 12 12 -2.743353 11 0.0191000 *
247.0798_4.12 rel_abund_log2 post pre 12 12 -2.630902 11 0.0234000 *
253.0503_5.048 rel_abund_log2 post pre 12 12 7.606059 11 0.0000105 ****
254.9816_0.664 rel_abund_log2 post pre 12 12 -2.302326 11 0.0419000 *
255.0674_5.078 rel_abund_log2 post pre 12 12 3.987767 11 0.0021300 **
257.0816_6.056 rel_abund_log2 post pre 12 12 7.184325 11 0.0000179 ****
263.1041_2.796 rel_abund_log2 post pre 12 12 2.252658 11 0.0457000 *
275.0224_3.427 rel_abund_log2 post pre 12 12 -2.326554 11 0.0401000 *
278.0698_0.683 rel_abund_log2 post pre 12 12 -3.576924 11 0.0043400 **
287.0526_0.66 rel_abund_log2 post pre 12 12 -2.666736 11 0.0219000 *
295.0806_3.721 rel_abund_log2 post pre 12 12 3.044795 11 0.0112000 *
295.0815_4.242 rel_abund_log2 post pre 12 12 4.053748 11 0.0019000 **
297.0975_4.072 rel_abund_log2 post pre 12 12 13.018491 11 0.0000001 ****
297.0975_4.498 rel_abund_log2 post pre 12 12 16.296093 11 0.0000000 ****
303.0177_0.795 rel_abund_log2 post pre 12 12 -2.483713 11 0.0304000 *
319.0474_0.696 rel_abund_log2 post pre 12 12 -2.628246 11 0.0235000 *
319.1032_0.789 rel_abund_log2 post pre 12 12 -2.927694 11 0.0137000 *
331.1218_3.932 rel_abund_log2 post pre 12 12 -3.072720 11 0.0106000 *
333.0047_4.33 rel_abund_log2 post pre 12 12 8.334242 11 0.0000044 ****
333.0066_3.893 rel_abund_log2 post pre 12 12 6.532428 11 0.0000424 ****
335.0244_4.36 rel_abund_log2 post pre 12 12 10.246418 11 0.0000006 ****
336.0718_3.292 rel_abund_log2 post pre 12 12 -2.299021 11 0.0421000 *
343.1396_5.368 rel_abund_log2 post pre 12 12 -3.516853 11 0.0048300 **
345.1554_3.382 rel_abund_log2 post pre 12 12 -2.853829 11 0.0157000 *
345.1554_4.506 rel_abund_log2 post pre 12 12 -3.712369 11 0.0034300 **
345.1933_4.201 rel_abund_log2 post pre 12 12 -2.376027 11 0.0368000 *
347.0774_4.782 rel_abund_log2 post pre 12 12 2.308452 11 0.0414000 *
351.0199_0.667 rel_abund_log2 post pre 12 12 -2.511641 11 0.0289000 *
355.1037_4.621 rel_abund_log2 post pre 12 12 -3.629476 11 0.0039600 **
359.1344_4.351 rel_abund_log2 post pre 12 12 -3.000783 11 0.0121000 *
359.1353_0.806 rel_abund_log2 post pre 12 12 -2.918482 11 0.0140000 *
359.1353_3.002 rel_abund_log2 post pre 12 12 -2.904307 11 0.0143000 *
361.1499_3.066 rel_abund_log2 post pre 12 12 -2.908186 11 0.0142000 *
361.1502_3.49 rel_abund_log2 post pre 12 12 -2.779998 11 0.0179000 *
363.021_3.933 rel_abund_log2 post pre 12 12 4.596203 11 0.0007700 ***
363.0234_4.453 rel_abund_log2 post pre 12 12 3.694581 11 0.0035300 **
365.0863_4.095 rel_abund_log2 post pre 12 12 8.786162 11 0.0000026 ****
366.0851_4.55 rel_abund_log2 post pre 12 12 5.065946 11 0.0003630 ***
369.0829_3.476 rel_abund_log2 post pre 12 12 -2.506415 11 0.0292000 *
370.0972_3.765 rel_abund_log2 post pre 12 12 -3.608558 11 0.0041100 **
370.097_3.208 rel_abund_log2 post pre 12 12 -2.962376 11 0.0129000 *
371.0976_0.801 rel_abund_log2 post pre 12 12 -2.356344 11 0.0381000 *
371.0978_3.481 rel_abund_log2 post pre 12 12 -2.817780 11 0.0167000 *
372.0951_0.795 rel_abund_log2 post pre 12 12 -3.171804 11 0.0088900 **
373.1141_3.685 rel_abund_log2 post pre 12 12 -3.196332 11 0.0085100 **
375.1278_3.109 rel_abund_log2 post pre 12 12 -2.862459 11 0.0154000 *
375.1294_0.798 rel_abund_log2 post pre 12 12 -2.752042 11 0.0188000 *
385.1685_4.355 rel_abund_log2 post pre 12 12 -2.324504 11 0.0403000 *
393.0495_3.605 rel_abund_log2 post pre 12 12 7.082995 11 0.0000204 ****
393.0776_3.464 rel_abund_log2 post pre 12 12 -2.746802 11 0.0190000 *
393.2643_6.229 rel_abund_log2 post pre 12 12 -3.544331 11 0.0046000 **
395.0628_0.675 rel_abund_log2 post pre 12 12 -2.208983 11 0.0493000 *
396.1124_4.459 rel_abund_log2 post pre 12 12 -2.268141 11 0.0445000 *
397.0582_0.701 rel_abund_log2 post pre 12 12 -3.189085 11 0.0086200 **
403.1133_4.514 rel_abund_log2 post pre 12 12 -3.173482 11 0.0088600 **
411.2021_4.884 rel_abund_log2 post pre 12 12 -2.709305 11 0.0203000 *
413.1426_4.219 rel_abund_log2 post pre 12 12 -3.588145 11 0.0042600 **
413.1426_4.51 rel_abund_log2 post pre 12 12 -4.228006 11 0.0014200 **
413.1436_3.2 rel_abund_log2 post pre 12 12 -2.225186 11 0.0479000 *
415.1607_0.797 rel_abund_log2 post pre 12 12 -2.211185 11 0.0491000 *
418.1149_0.722 rel_abund_log2 post pre 12 12 -3.062973 11 0.0108000 *
424.0493_0.721 rel_abund_log2 post pre 12 12 2.416979 11 0.0342000 *
427.197_3.64 rel_abund_log2 post pre 12 12 -3.013185 11 0.0118000 *
427.197_4.049 rel_abund_log2 post pre 12 12 -3.246928 11 0.0077800 **
429.0815_4.032 rel_abund_log2 post pre 12 12 11.599019 11 0.0000002 ****
429.082_3.756 rel_abund_log2 post pre 12 12 10.983918 11 0.0000003 ****
429.083_3.201 rel_abund_log2 post pre 12 12 10.488952 11 0.0000005 ****
429.1762_5.798 rel_abund_log2 post pre 12 12 2.269644 11 0.0443000 *
431.0534_0.666 rel_abund_log2 post pre 12 12 -3.193776 11 0.0085500 **
431.0979_3.907 rel_abund_log2 post pre 12 12 11.128933 11 0.0000003 ****
433.0646_4.045 rel_abund_log2 post pre 12 12 4.163031 11 0.0015800 **
433.1136_4.519 rel_abund_log2 post pre 12 12 5.189178 11 0.0002990 ***
433.113_4.886 rel_abund_log2 post pre 12 12 11.902482 11 0.0000001 ****
434.1396_3.922 rel_abund_log2 post pre 12 12 -2.518498 11 0.0286000 *
445.0782_4.484 rel_abund_log2 post pre 12 12 7.998427 11 0.0000065 ****
447.0919_4.504 rel_abund_log2 post pre 12 12 3.234507 11 0.0079500 **
447.0921_4.067 rel_abund_log2 post pre 12 12 2.881073 11 0.0149000 *
447.0928_3.777 rel_abund_log2 post pre 12 12 5.356682 11 0.0002310 ***
447.092_4.187 rel_abund_log2 post pre 12 12 3.199700 11 0.0084600 **
449.0698_2.589 rel_abund_log2 post pre 12 12 2.237888 11 0.0469000 *
449.1074_4.301 rel_abund_log2 post pre 12 12 6.255445 11 0.0000621 ****
449.254_8.044 rel_abund_log2 post pre 12 12 -2.928850 11 0.0137000 *
459.0843_2.964 rel_abund_log2 post pre 12 12 2.842769 11 0.0160000 *
459.093_3.801 rel_abund_log2 post pre 12 12 17.065127 11 0.0000000 ****
463.2334_5.897 rel_abund_log2 post pre 12 12 -2.912403 11 0.0141000 *
465.0845_4.208 rel_abund_log2 post pre 12 12 -3.508118 11 0.0049000 **
465.2493_6.146 rel_abund_log2 post pre 12 12 -2.450605 11 0.0322000 *
477.1039_4.686 rel_abund_log2 post pre 12 12 -3.611319 11 0.0040900 **
489.2123_4.076 rel_abund_log2 post pre 12 12 -2.290848 11 0.0427000 *
492.1884_4.319 rel_abund_log2 post pre 12 12 -2.480212 11 0.0306000 *
493.0631_3.69 rel_abund_log2 post pre 12 12 -2.332401 11 0.0397000 *
493.1666_4.573 rel_abund_log2 post pre 12 12 5.069186 11 0.0003610 ***
495.2232_5.846 rel_abund_log2 post pre 12 12 3.650833 11 0.0038200 **
497.0695_3.785 rel_abund_log2 post pre 12 12 6.593726 11 0.0000390 ****
509.0384_0.699 rel_abund_log2 post pre 12 12 8.135671 11 0.0000056 ****
509.0409_3.291 rel_abund_log2 post pre 12 12 10.822844 11 0.0000003 ****
509.2752_5.821 rel_abund_log2 post pre 12 12 -2.383374 11 0.0363000 *
514.1698_4.543 rel_abund_log2 post pre 12 12 -2.471245 11 0.0311000 *
521.1082_4.508 rel_abund_log2 post pre 12 12 6.703198 11 0.0000336 ****
525.0334_3.606 rel_abund_log2 post pre 12 12 10.906280 11 0.0000003 ****
528.2633_5.962 rel_abund_log2 post pre 12 12 -2.743100 11 0.0191000 *
531.0773_4.532 rel_abund_log2 post pre 12 12 2.532233 11 0.0279000 *
550.1307_0.664 rel_abund_log2 post pre 12 12 -2.463009 11 0.0315000 *
557.2465_7.479 rel_abund_log2 post pre 12 12 2.380755 11 0.0365000 *
572.2105_4.512 rel_abund_log2 post pre 12 12 -2.587996 11 0.0252000 *
572.2528_4.339 rel_abund_log2 post pre 12 12 -2.657747 11 0.0223000 *
576.1384_0.705 rel_abund_log2 post pre 12 12 -3.202387 11 0.0084200 **
579.2066_4.211 rel_abund_log2 post pre 12 12 -3.081009 11 0.0105000 *
591.3184_5.021 rel_abund_log2 post pre 12 12 2.713032 11 0.0202000 *
593.3333_5.048 rel_abund_log2 post pre 12 12 2.391537 11 0.0358000 *
605.1126_3.023 rel_abund_log2 post pre 12 12 6.747767 11 0.0000317 ****
613.3589_5.89 rel_abund_log2 post pre 12 12 -2.608144 11 0.0243000 *
617.1836_4.515 rel_abund_log2 post pre 12 12 5.063815 11 0.0003640 ***
639.0783_3.758 rel_abund_log2 post pre 12 12 6.004089 11 0.0000887 ****
691.3179_4.171 rel_abund_log2 post pre 12 12 -2.851937 11 0.0157000 *
# how many are significant?
nrow(red_t.test_paired_sig)
## [1] 138

Red Without outlier

# run paired t-tests for control intervention
red_noOutlier_t.test_paired <- df_for_stats_noOutlier %>%
  filter(Intervention == "Red") %>%
  dplyr::select(Subject, pre_post, mz_rt, rel_abund_log2) %>%
  group_by(mz_rt) %>%
  t_test(rel_abund_log2 ~ pre_post, 
         paired = TRUE, 
         p.adjust.method = "BH") %>% # Benjamini-Hochberg controlling to lower false positives
  add_significance()

Statistically significant features

# which features are significant?
red_noOutlier_t.test_paired_sig <- red_noOutlier_t.test_paired %>%
  filter(p <= 0.05)
kable(red_noOutlier_t.test_paired_sig)
mz_rt .y. group1 group2 n1 n2 statistic df p p.signif
1122.0248_4.125 rel_abund_log2 post pre 11 11 16.953938 10 0.0000000 ****
1122.0249_4.032 rel_abund_log2 post pre 11 11 12.864394 10 0.0000002 ****
168.0302_2.597 rel_abund_log2 post pre 11 11 2.594820 10 0.0267000 *
174.0405_0.655 rel_abund_log2 post pre 11 11 -2.515647 10 0.0306000 *
187.0383_0.634 rel_abund_log2 post pre 11 11 -2.567731 10 0.0280000 *
194.0458_3.657 rel_abund_log2 post pre 11 11 2.967654 10 0.0141000 *
195.051_0.627 rel_abund_log2 post pre 11 11 -2.800697 10 0.0188000 *
199.0068_4.328 rel_abund_log2 post pre 11 11 2.937957 10 0.0148000 *
201.0227_4.086 rel_abund_log2 post pre 11 11 14.594623 10 0.0000000 ****
201.0228_4.555 rel_abund_log2 post pre 11 11 15.429913 10 0.0000000 ****
208.0615_3.836 rel_abund_log2 post pre 11 11 -3.272724 10 0.0083900 **
209.0532_3.773 rel_abund_log2 post pre 11 11 -2.371227 10 0.0392000 *
211.0611_3.158 rel_abund_log2 post pre 11 11 -3.149253 10 0.0103000 *
215.0021_3.307 rel_abund_log2 post pre 11 11 7.220693 10 0.0000286 ****
217.0172_4.4 rel_abund_log2 post pre 11 11 5.811750 10 0.0001700 ***
217.0173_3.88 rel_abund_log2 post pre 11 11 3.667624 10 0.0043300 **
218.0821_5.22 rel_abund_log2 post pre 11 11 -2.782899 10 0.0194000 *
223.0623_0.802 rel_abund_log2 post pre 11 11 -2.580491 10 0.0274000 *
225.0623_0.658 rel_abund_log2 post pre 11 11 -2.723898 10 0.0214000 *
227.0559_0.8 rel_abund_log2 post pre 11 11 -2.268032 10 0.0467000 *
230.9967_0.757 rel_abund_log2 post pre 11 11 2.601497 10 0.0264000 *
232.9759_0.708 rel_abund_log2 post pre 11 11 3.673045 10 0.0043000 **
235.057_0.641 rel_abund_log2 post pre 11 11 -3.220758 10 0.0091600 **
246.0753_3.721 rel_abund_log2 post pre 11 11 -2.690304 10 0.0227000 *
247.0798_4.12 rel_abund_log2 post pre 11 11 -2.485533 10 0.0322000 *
253.0503_5.048 rel_abund_log2 post pre 11 11 6.883945 10 0.0000428 ****
254.9816_0.664 rel_abund_log2 post pre 11 11 -2.308606 10 0.0436000 *
255.0674_5.078 rel_abund_log2 post pre 11 11 3.671258 10 0.0043100 **
257.0816_6.056 rel_abund_log2 post pre 11 11 6.505158 10 0.0000685 ****
259.057_0.712 rel_abund_log2 post pre 11 11 -2.285241 10 0.0454000 *
275.0224_3.427 rel_abund_log2 post pre 11 11 -2.721029 10 0.0215000 *
278.0698_0.683 rel_abund_log2 post pre 11 11 -4.441324 10 0.0012500 **
287.0526_0.66 rel_abund_log2 post pre 11 11 -2.513389 10 0.0307000 *
295.0806_3.721 rel_abund_log2 post pre 11 11 2.970591 10 0.0140000 *
295.0815_4.242 rel_abund_log2 post pre 11 11 4.351551 10 0.0014400 **
297.0975_4.072 rel_abund_log2 post pre 11 11 12.525848 10 0.0000002 ****
297.0975_4.498 rel_abund_log2 post pre 11 11 15.225047 10 0.0000000 ****
300.039_0.661 rel_abund_log2 post pre 11 11 -2.945955 10 0.0146000 *
303.0712_0.728 rel_abund_log2 post pre 11 11 3.139116 10 0.0105000 *
303.072_2.684 rel_abund_log2 post pre 11 11 2.395147 10 0.0376000 *
319.0474_0.696 rel_abund_log2 post pre 11 11 -2.271359 10 0.0465000 *
319.1032_0.789 rel_abund_log2 post pre 11 11 -2.834109 10 0.0177000 *
328.0474_0.665 rel_abund_log2 post pre 11 11 -3.051623 10 0.0122000 *
331.1218_3.932 rel_abund_log2 post pre 11 11 -3.187731 10 0.0096900 **
333.0047_4.33 rel_abund_log2 post pre 11 11 8.344941 10 0.0000081 ****
333.0066_3.893 rel_abund_log2 post pre 11 11 7.313244 10 0.0000256 ****
335.0244_4.36 rel_abund_log2 post pre 11 11 9.524045 10 0.0000025 ****
343.1396_5.368 rel_abund_log2 post pre 11 11 -3.261653 10 0.0085500 **
345.1554_3.382 rel_abund_log2 post pre 11 11 -2.839922 10 0.0176000 *
345.1554_4.506 rel_abund_log2 post pre 11 11 -3.450951 10 0.0062200 **
345.1933_4.201 rel_abund_log2 post pre 11 11 -2.231167 10 0.0497000 *
347.0774_4.782 rel_abund_log2 post pre 11 11 2.349123 10 0.0407000 *
347.1678_4.233 rel_abund_log2 post pre 11 11 -2.418550 10 0.0362000 *
347.17_3.394 rel_abund_log2 post pre 11 11 -2.243782 10 0.0487000 *
351.0199_0.667 rel_abund_log2 post pre 11 11 -2.488484 10 0.0321000 *
355.1037_4.621 rel_abund_log2 post pre 11 11 -4.639780 10 0.0009220 ***
359.1344_4.351 rel_abund_log2 post pre 11 11 -2.922365 10 0.0152000 *
359.1347_3.481 rel_abund_log2 post pre 11 11 -2.280405 10 0.0458000 *
359.1353_0.806 rel_abund_log2 post pre 11 11 -3.113067 10 0.0110000 *
359.1353_3.002 rel_abund_log2 post pre 11 11 -2.981756 10 0.0138000 *
361.1499_3.066 rel_abund_log2 post pre 11 11 -3.010305 10 0.0131000 *
361.1502_3.49 rel_abund_log2 post pre 11 11 -3.129756 10 0.0107000 *
363.021_3.933 rel_abund_log2 post pre 11 11 4.546386 10 0.0010600 **
363.0234_4.453 rel_abund_log2 post pre 11 11 3.334866 10 0.0075600 **
365.0863_4.095 rel_abund_log2 post pre 11 11 9.351826 10 0.0000029 ****
366.0851_4.55 rel_abund_log2 post pre 11 11 4.561034 10 0.0010400 **
369.0829_3.476 rel_abund_log2 post pre 11 11 -3.020661 10 0.0129000 *
370.0972_3.765 rel_abund_log2 post pre 11 11 -3.224258 10 0.0091100 **
370.097_3.208 rel_abund_log2 post pre 11 11 -2.598766 10 0.0265000 *
371.0976_0.801 rel_abund_log2 post pre 11 11 -2.580622 10 0.0274000 *
371.0978_3.481 rel_abund_log2 post pre 11 11 -3.457883 10 0.0061400 **
372.0951_0.795 rel_abund_log2 post pre 11 11 -2.947224 10 0.0146000 *
373.1141_3.685 rel_abund_log2 post pre 11 11 -3.336139 10 0.0075400 **
375.1278_3.109 rel_abund_log2 post pre 11 11 -2.948802 10 0.0146000 *
375.1294_0.798 rel_abund_log2 post pre 11 11 -2.984270 10 0.0137000 *
393.0495_3.605 rel_abund_log2 post pre 11 11 6.844579 10 0.0000449 ****
393.0776_3.464 rel_abund_log2 post pre 11 11 -2.977353 10 0.0139000 *
393.2643_6.229 rel_abund_log2 post pre 11 11 -3.106032 10 0.0111000 *
397.0582_0.701 rel_abund_log2 post pre 11 11 -2.977087 10 0.0139000 *
400.1429_4.669 rel_abund_log2 post pre 11 11 -2.368663 10 0.0394000 *
403.1133_4.514 rel_abund_log2 post pre 11 11 -2.832928 10 0.0178000 *
405.0469_0.697 rel_abund_log2 post pre 11 11 -2.395438 10 0.0376000 *
405.118_5.456 rel_abund_log2 post pre 11 11 -2.597200 10 0.0266000 *
407.0405_4.991 rel_abund_log2 post pre 11 11 -2.314706 10 0.0432000 *
411.2021_4.884 rel_abund_log2 post pre 11 11 -2.371909 10 0.0391000 *
413.1426_4.219 rel_abund_log2 post pre 11 11 -3.495668 10 0.0057700 **
413.1426_4.51 rel_abund_log2 post pre 11 11 -3.881706 10 0.0030500 **
413.1436_3.2 rel_abund_log2 post pre 11 11 -2.273782 10 0.0463000 *
415.1607_0.797 rel_abund_log2 post pre 11 11 -2.295768 10 0.0446000 *
418.1149_0.722 rel_abund_log2 post pre 11 11 -3.864202 10 0.0031400 **
427.197_3.64 rel_abund_log2 post pre 11 11 -2.915237 10 0.0154000 *
427.197_4.049 rel_abund_log2 post pre 11 11 -3.079159 10 0.0117000 *
429.0815_4.032 rel_abund_log2 post pre 11 11 10.579620 10 0.0000009 ****
429.082_3.756 rel_abund_log2 post pre 11 11 11.197913 10 0.0000006 ****
429.083_3.201 rel_abund_log2 post pre 11 11 10.376468 10 0.0000011 ****
429.1762_5.798 rel_abund_log2 post pre 11 11 2.506597 10 0.0311000 *
431.0534_0.666 rel_abund_log2 post pre 11 11 -2.827706 10 0.0179000 *
431.0979_3.907 rel_abund_log2 post pre 11 11 10.555630 10 0.0000010 ****
433.0646_4.045 rel_abund_log2 post pre 11 11 4.483248 10 0.0011700 **
433.1136_4.519 rel_abund_log2 post pre 11 11 4.775541 10 0.0007510 ***
433.113_4.886 rel_abund_log2 post pre 11 11 10.832767 10 0.0000008 ****
434.1396_3.922 rel_abund_log2 post pre 11 11 -2.584976 10 0.0272000 *
437.0526_5.832 rel_abund_log2 post pre 11 11 2.560461 10 0.0284000 *
445.0782_4.484 rel_abund_log2 post pre 11 11 7.392075 10 0.0000234 ****
447.0919_4.504 rel_abund_log2 post pre 11 11 2.835809 10 0.0177000 *
447.0921_4.067 rel_abund_log2 post pre 11 11 2.895355 10 0.0160000 *
447.0928_3.777 rel_abund_log2 post pre 11 11 5.862940 10 0.0001590 ***
447.092_4.187 rel_abund_log2 post pre 11 11 3.286366 10 0.0082000 **
449.0698_2.589 rel_abund_log2 post pre 11 11 2.722287 10 0.0215000 *
449.1074_4.301 rel_abund_log2 post pre 11 11 5.717157 10 0.0001940 ***
449.254_8.044 rel_abund_log2 post pre 11 11 -2.516932 10 0.0305000 *
459.0843_2.964 rel_abund_log2 post pre 11 11 2.440971 10 0.0348000 *
459.093_3.801 rel_abund_log2 post pre 11 11 15.975248 10 0.0000000 ****
463.2334_5.897 rel_abund_log2 post pre 11 11 -2.964803 10 0.0142000 *
465.0845_4.208 rel_abund_log2 post pre 11 11 -3.506125 10 0.0056700 **
465.2493_6.146 rel_abund_log2 post pre 11 11 -2.362648 10 0.0398000 *
475.0782_0.667 rel_abund_log2 post pre 11 11 -2.477009 10 0.0327000 *
477.1039_4.686 rel_abund_log2 post pre 11 11 -4.364232 10 0.0014100 **
492.1884_4.319 rel_abund_log2 post pre 11 11 -2.491375 10 0.0319000 *
493.0631_3.69 rel_abund_log2 post pre 11 11 -2.305521 10 0.0438000 *
493.1666_4.573 rel_abund_log2 post pre 11 11 4.823781 10 0.0006980 ***
495.2232_5.846 rel_abund_log2 post pre 11 11 3.638677 10 0.0045500 **
497.0695_3.785 rel_abund_log2 post pre 11 11 7.612692 10 0.0000181 ****
501.2122_5.698 rel_abund_log2 post pre 11 11 -2.539997 10 0.0294000 *
509.0384_0.699 rel_abund_log2 post pre 11 11 8.465811 10 0.0000072 ****
509.0409_3.291 rel_abund_log2 post pre 11 11 13.572124 10 0.0000001 ****
509.2752_5.821 rel_abund_log2 post pre 11 11 -2.359686 10 0.0400000 *
521.1082_4.508 rel_abund_log2 post pre 11 11 6.174921 10 0.0001050 ***
525.0334_3.606 rel_abund_log2 post pre 11 11 10.488811 10 0.0000010 ****
528.2633_5.962 rel_abund_log2 post pre 11 11 -2.348740 10 0.0407000 *
550.1307_0.664 rel_abund_log2 post pre 11 11 -2.372318 10 0.0391000 *
572.2105_4.512 rel_abund_log2 post pre 11 11 -2.527125 10 0.0300000 *
572.2528_4.339 rel_abund_log2 post pre 11 11 -2.731114 10 0.0212000 *
576.1384_0.705 rel_abund_log2 post pre 11 11 -4.248668 10 0.0016900 **
579.2066_4.211 rel_abund_log2 post pre 11 11 -2.663537 10 0.0238000 *
591.3184_5.021 rel_abund_log2 post pre 11 11 2.786554 10 0.0192000 *
593.3333_5.048 rel_abund_log2 post pre 11 11 3.403899 10 0.0067300 **
605.1126_3.023 rel_abund_log2 post pre 11 11 7.581455 10 0.0000188 ****
613.3589_5.89 rel_abund_log2 post pre 11 11 -2.541285 10 0.0293000 *
617.1836_4.515 rel_abund_log2 post pre 11 11 4.577883 10 0.0010100 **
639.0783_3.758 rel_abund_log2 post pre 11 11 7.448942 10 0.0000219 ****
691.3179_4.171 rel_abund_log2 post pre 11 11 -2.733884 10 0.0211000 *
# how many are significant?
nrow(red_noOutlier_t.test_paired_sig)
## [1] 142
Mummichog export
red_for_mummichog <- red_noOutlier_t.test_paired %>%
  dplyr::select(mz_rt,
         p,
         statistic) %>%
  separate(col = mz_rt,
           into = c("m/z", "rt"),
           sep = "_") %>%
  rename("p-value" = "p") %>%
  rename("t-score" = "statistic")

write_csv(red_for_mummichog,
          "redcomp-mummichog-list-c18neg.csv")

Post-red vs post-yellow

# run paired t-tests for post interventions
post_t.test_paired <- df_for_stats %>%
  filter(pre_post == "post") %>%
  dplyr::select(Subject, Intervention, mz_rt, rel_abund_log2) %>%
  group_by(mz_rt) %>%
  t_test(rel_abund_log2 ~ Intervention, 
         paired = TRUE, 
         p.adjust.method = "BH") %>% # Benjamini-Hochberg controlling to lower false positives
  add_significance()

Statistically significant features

# which features are significant?
post_t.test_paired_sig <- post_t.test_paired %>%
  filter(p <= 0.05)
kable(post_t.test_paired_sig)
mz_rt .y. group1 group2 n1 n2 statistic df p p.signif
1122.0248_4.125 rel_abund_log2 Red Yellow 12 12 12.261341 11 0.0000001 ****
1122.0249_4.032 rel_abund_log2 Red Yellow 12 12 14.335475 11 0.0000000 ****
175.0241_0.753 rel_abund_log2 Red Yellow 12 12 -2.652839 11 0.0225000 *
178.0524_2.721 rel_abund_log2 Red Yellow 12 12 -2.881217 11 0.0149000 *
201.0227_4.086 rel_abund_log2 Red Yellow 12 12 16.654418 11 0.0000000 ****
201.0228_4.555 rel_abund_log2 Red Yellow 12 12 19.108616 11 0.0000000 ****
206.9967_2.418 rel_abund_log2 Red Yellow 12 12 -2.768641 11 0.0183000 *
215.0021_3.307 rel_abund_log2 Red Yellow 12 12 3.755225 11 0.0031800 **
217.0172_4.4 rel_abund_log2 Red Yellow 12 12 4.244663 11 0.0013800 **
217.0173_3.88 rel_abund_log2 Red Yellow 12 12 2.605892 11 0.0244000 *
253.0503_5.048 rel_abund_log2 Red Yellow 12 12 11.662893 11 0.0000002 ****
255.0674_5.078 rel_abund_log2 Red Yellow 12 12 3.956741 11 0.0022500 **
257.0816_6.056 rel_abund_log2 Red Yellow 12 12 7.824727 11 0.0000081 ****
297.0975_4.072 rel_abund_log2 Red Yellow 12 12 11.856212 11 0.0000001 ****
297.0975_4.498 rel_abund_log2 Red Yellow 12 12 15.659551 11 0.0000000 ****
333.0047_4.33 rel_abund_log2 Red Yellow 12 12 8.894883 11 0.0000024 ****
333.0066_3.893 rel_abund_log2 Red Yellow 12 12 8.212012 11 0.0000051 ****
335.0244_4.36 rel_abund_log2 Red Yellow 12 12 11.295074 11 0.0000002 ****
345.1554_4.506 rel_abund_log2 Red Yellow 12 12 -2.357006 11 0.0380000 *
345.1933_4.201 rel_abund_log2 Red Yellow 12 12 -2.646888 11 0.0227000 *
361.1499_3.066 rel_abund_log2 Red Yellow 12 12 -3.290661 11 0.0072000 **
363.021_3.933 rel_abund_log2 Red Yellow 12 12 4.252842 11 0.0013600 **
363.0234_4.453 rel_abund_log2 Red Yellow 12 12 4.151299 11 0.0016100 **
365.0863_4.095 rel_abund_log2 Red Yellow 12 12 8.089468 11 0.0000059 ****
366.0851_4.55 rel_abund_log2 Red Yellow 12 12 4.171253 11 0.0015600 **
369.0829_3.476 rel_abund_log2 Red Yellow 12 12 -2.352103 11 0.0383000 *
372.0951_0.795 rel_abund_log2 Red Yellow 12 12 -2.209135 11 0.0493000 *
393.0495_3.605 rel_abund_log2 Red Yellow 12 12 5.412055 11 0.0002130 ***
413.1426_4.51 rel_abund_log2 Red Yellow 12 12 -2.486714 11 0.0302000 *
427.197_3.64 rel_abund_log2 Red Yellow 12 12 -2.598312 11 0.0248000 *
427.197_4.049 rel_abund_log2 Red Yellow 12 12 -2.223249 11 0.0481000 *
429.0815_4.032 rel_abund_log2 Red Yellow 12 12 16.032414 11 0.0000000 ****
429.082_3.756 rel_abund_log2 Red Yellow 12 12 10.730400 11 0.0000004 ****
429.083_3.201 rel_abund_log2 Red Yellow 12 12 9.736330 11 0.0000010 ****
431.0979_3.907 rel_abund_log2 Red Yellow 12 12 10.232249 11 0.0000006 ****
433.0646_4.045 rel_abund_log2 Red Yellow 12 12 3.374245 11 0.0062100 **
433.1136_4.519 rel_abund_log2 Red Yellow 12 12 5.160475 11 0.0003130 ***
433.113_4.886 rel_abund_log2 Red Yellow 12 12 17.881262 11 0.0000000 ****
445.0782_4.484 rel_abund_log2 Red Yellow 12 12 7.998582 11 0.0000065 ****
447.0928_3.777 rel_abund_log2 Red Yellow 12 12 2.889559 11 0.0147000 *
447.092_4.187 rel_abund_log2 Red Yellow 12 12 2.431750 11 0.0333000 *
449.1074_4.301 rel_abund_log2 Red Yellow 12 12 4.555092 11 0.0008230 ***
459.093_3.801 rel_abund_log2 Red Yellow 12 12 16.698655 11 0.0000000 ****
493.1666_4.573 rel_abund_log2 Red Yellow 12 12 5.699684 11 0.0001380 ***
495.2232_5.846 rel_abund_log2 Red Yellow 12 12 2.683297 11 0.0213000 *
497.0695_3.785 rel_abund_log2 Red Yellow 12 12 7.921694 11 0.0000072 ****
509.0384_0.699 rel_abund_log2 Red Yellow 12 12 7.903464 11 0.0000073 ****
509.0409_3.291 rel_abund_log2 Red Yellow 12 12 8.612345 11 0.0000032 ****
521.1082_4.508 rel_abund_log2 Red Yellow 12 12 6.326623 11 0.0000562 ****
525.0334_3.606 rel_abund_log2 Red Yellow 12 12 7.686252 11 0.0000095 ****
531.0773_4.532 rel_abund_log2 Red Yellow 12 12 2.438338 11 0.0329000 *
572.2105_4.512 rel_abund_log2 Red Yellow 12 12 -2.836010 11 0.0162000 *
576.1384_0.705 rel_abund_log2 Red Yellow 12 12 -2.364335 11 0.0375000 *
605.1126_3.023 rel_abund_log2 Red Yellow 12 12 6.568304 11 0.0000403 ****
617.1836_4.515 rel_abund_log2 Red Yellow 12 12 4.771226 11 0.0005800 ***
639.0783_3.758 rel_abund_log2 Red Yellow 12 12 7.150782 11 0.0000187 ****
691.3179_4.171 rel_abund_log2 Red Yellow 12 12 -2.779515 11 0.0179000 *
# how many are significant?
nrow(post_t.test_paired_sig)
## [1] 57

Post-red vs post-yellow Without Outlier

# run paired t-tests for post interventions
post_noOutlier_t.test_paired <- df_for_stats %>%
  filter(pre_post == "post",
         Subject != "6106") %>%
  dplyr::select(Subject, Intervention, mz_rt, rel_abund_log2) %>%
  group_by(mz_rt) %>%
  t_test(rel_abund_log2 ~ Intervention, 
         paired = TRUE, 
         p.adjust.method = "BH") %>% # Benjamini-Hochberg controlling to lower false positives
  add_significance()

Statistically significant features

# which features are significant?
post_noOutlier_t.test_paired_sig <- post_noOutlier_t.test_paired %>%
  filter(p <= 0.05)
kable(post_noOutlier_t.test_paired_sig)
mz_rt .y. group1 group2 n1 n2 statistic df p p.signif
1122.0248_4.125 rel_abund_log2 Red Yellow 11 11 16.568040 10 0.0000000 ****
1122.0249_4.032 rel_abund_log2 Red Yellow 11 11 17.935274 10 0.0000000 ****
175.0241_0.753 rel_abund_log2 Red Yellow 11 11 -2.426977 10 0.0356000 *
178.0524_2.721 rel_abund_log2 Red Yellow 11 11 -2.604367 10 0.0263000 *
201.0227_4.086 rel_abund_log2 Red Yellow 11 11 18.752278 10 0.0000000 ****
201.0228_4.555 rel_abund_log2 Red Yellow 11 11 20.576006 10 0.0000000 ****
206.9967_2.418 rel_abund_log2 Red Yellow 11 11 -2.516755 10 0.0306000 *
217.0172_4.4 rel_abund_log2 Red Yellow 11 11 4.679864 10 0.0008680 ***
217.0173_3.88 rel_abund_log2 Red Yellow 11 11 2.291675 10 0.0449000 *
241.1189_3.536 rel_abund_log2 Red Yellow 11 11 2.359264 10 0.0400000 *
243.1349_3.353 rel_abund_log2 Red Yellow 11 11 2.296458 10 0.0445000 *
253.0503_5.048 rel_abund_log2 Red Yellow 11 11 10.636744 10 0.0000009 ****
255.0674_5.078 rel_abund_log2 Red Yellow 11 11 3.816934 10 0.0033900 **
257.0816_6.056 rel_abund_log2 Red Yellow 11 11 7.084909 10 0.0000336 ****
261.039_0.66 rel_abund_log2 Red Yellow 11 11 2.304029 10 0.0440000 *
297.0975_4.072 rel_abund_log2 Red Yellow 11 11 10.343403 10 0.0000012 ****
297.0975_4.498 rel_abund_log2 Red Yellow 11 11 13.921226 10 0.0000001 ****
333.0047_4.33 rel_abund_log2 Red Yellow 11 11 9.840711 10 0.0000018 ****
333.0066_3.893 rel_abund_log2 Red Yellow 11 11 10.103779 10 0.0000015 ****
335.0244_4.36 rel_abund_log2 Red Yellow 11 11 11.248800 10 0.0000005 ****
345.1554_4.506 rel_abund_log2 Red Yellow 11 11 -2.481438 10 0.0325000 *
345.1933_4.201 rel_abund_log2 Red Yellow 11 11 -2.488524 10 0.0321000 *
359.1353_0.806 rel_abund_log2 Red Yellow 11 11 -2.967480 10 0.0141000 *
361.1499_3.066 rel_abund_log2 Red Yellow 11 11 -2.509862 10 0.0309000 *
363.021_3.933 rel_abund_log2 Red Yellow 11 11 3.950894 10 0.0027300 **
363.0234_4.453 rel_abund_log2 Red Yellow 11 11 3.098551 10 0.0113000 *
365.0863_4.095 rel_abund_log2 Red Yellow 11 11 8.889569 10 0.0000046 ****
366.0851_4.55 rel_abund_log2 Red Yellow 11 11 4.001611 10 0.0025100 **
369.0829_3.476 rel_abund_log2 Red Yellow 11 11 -2.431822 10 0.0353000 *
373.1141_3.685 rel_abund_log2 Red Yellow 11 11 -2.930087 10 0.0150000 *
393.0495_3.605 rel_abund_log2 Red Yellow 11 11 6.076526 10 0.0001190 ***
405.0469_0.697 rel_abund_log2 Red Yellow 11 11 -2.549860 10 0.0289000 *
413.1426_4.219 rel_abund_log2 Red Yellow 11 11 -2.683601 10 0.0230000 *
413.1426_4.51 rel_abund_log2 Red Yellow 11 11 -2.673485 10 0.0234000 *
413.1436_3.2 rel_abund_log2 Red Yellow 11 11 -2.235340 10 0.0494000 *
427.1967_4.894 rel_abund_log2 Red Yellow 11 11 -2.313638 10 0.0432000 *
427.197_3.64 rel_abund_log2 Red Yellow 11 11 -2.619251 10 0.0256000 *
427.197_4.049 rel_abund_log2 Red Yellow 11 11 -2.382279 10 0.0385000 *
429.0815_4.032 rel_abund_log2 Red Yellow 11 11 14.300935 10 0.0000001 ****
429.082_3.756 rel_abund_log2 Red Yellow 11 11 13.732174 10 0.0000001 ****
429.083_3.201 rel_abund_log2 Red Yellow 11 11 11.870765 10 0.0000003 ****
431.0979_3.907 rel_abund_log2 Red Yellow 11 11 9.146268 10 0.0000036 ****
433.0646_4.045 rel_abund_log2 Red Yellow 11 11 2.550534 10 0.0288000 *
433.1136_4.519 rel_abund_log2 Red Yellow 11 11 4.442153 10 0.0012500 **
433.113_4.886 rel_abund_log2 Red Yellow 11 11 14.223055 10 0.0000001 ****
445.0782_4.484 rel_abund_log2 Red Yellow 11 11 6.830648 10 0.0000457 ****
447.0928_3.777 rel_abund_log2 Red Yellow 11 11 3.852655 10 0.0032000 **
447.092_4.187 rel_abund_log2 Red Yellow 11 11 2.517924 10 0.0305000 *
449.1074_4.301 rel_abund_log2 Red Yellow 11 11 3.914249 10 0.0028900 **
459.093_3.801 rel_abund_log2 Red Yellow 11 11 17.666591 10 0.0000000 ****
493.0631_3.69 rel_abund_log2 Red Yellow 11 11 -2.349189 10 0.0407000 *
493.1666_4.573 rel_abund_log2 Red Yellow 11 11 6.227474 10 0.0000979 ****
497.0695_3.785 rel_abund_log2 Red Yellow 11 11 13.235046 10 0.0000001 ****
509.0384_0.699 rel_abund_log2 Red Yellow 11 11 8.337022 10 0.0000082 ****
509.0409_3.291 rel_abund_log2 Red Yellow 11 11 10.024150 10 0.0000016 ****
521.1082_4.508 rel_abund_log2 Red Yellow 11 11 6.840537 10 0.0000451 ****
525.0334_3.606 rel_abund_log2 Red Yellow 11 11 10.067446 10 0.0000015 ****
572.2105_4.512 rel_abund_log2 Red Yellow 11 11 -3.073439 10 0.0118000 *
576.1384_0.705 rel_abund_log2 Red Yellow 11 11 -3.123052 10 0.0108000 *
605.1126_3.023 rel_abund_log2 Red Yellow 11 11 7.143170 10 0.0000313 ****
617.1836_4.515 rel_abund_log2 Red Yellow 11 11 4.484883 10 0.0011700 **
639.0783_3.758 rel_abund_log2 Red Yellow 11 11 8.315119 10 0.0000084 ****
681.2357_4.115 rel_abund_log2 Red Yellow 11 11 2.242285 10 0.0488000 *
691.3179_4.171 rel_abund_log2 Red Yellow 11 11 -2.587562 10 0.0271000 *
# how many are significant?
nrow(post_noOutlier_t.test_paired_sig)
## [1] 64
Mummichog export
postcomp_for_mummichog <- post_noOutlier_t.test_paired %>%
  dplyr::select(mz_rt,
         p,
         statistic) %>%
  separate(col = mz_rt,
           into = c("m.z", "r.t"),
           sep = "_") %>%
  rename("p.value" = "p") %>%
  rename("t.score" = "statistic")

write_csv(postcomp_for_mummichog,
          "post-comp-mummichog-list-c18neg.csv")

Outlier comparison

Are there any significant features shared between tests with and without outlier?

# return sig features present only in df with outlier, and not in df without outlier
kable(anti_join(post_noOutlier_t.test_paired_sig,
          post_t.test_paired_sig,
          by = "mz_rt"))
mz_rt .y. group1 group2 n1 n2 statistic df p p.signif
241.1189_3.536 rel_abund_log2 Red Yellow 11 11 2.359264 10 0.0400 *
243.1349_3.353 rel_abund_log2 Red Yellow 11 11 2.296458 10 0.0445 *
261.039_0.66 rel_abund_log2 Red Yellow 11 11 2.304029 10 0.0440 *
359.1353_0.806 rel_abund_log2 Red Yellow 11 11 -2.967480 10 0.0141 *
373.1141_3.685 rel_abund_log2 Red Yellow 11 11 -2.930087 10 0.0150 *
405.0469_0.697 rel_abund_log2 Red Yellow 11 11 -2.549860 10 0.0289 *
413.1426_4.219 rel_abund_log2 Red Yellow 11 11 -2.683601 10 0.0230 *
413.1436_3.2 rel_abund_log2 Red Yellow 11 11 -2.235340 10 0.0494 *
427.1967_4.894 rel_abund_log2 Red Yellow 11 11 -2.313638 10 0.0432 *
493.0631_3.69 rel_abund_log2 Red Yellow 11 11 -2.349189 10 0.0407 *
681.2357_4.115 rel_abund_log2 Red Yellow 11 11 2.242285 10 0.0488 *
nrow(anti_join(post_noOutlier_t.test_paired_sig,
          post_t.test_paired_sig,
          by = "mz_rt"))
## [1] 11
# return sig features from df with no outlier that are also present in df with outlier
kable(semi_join(post_noOutlier_t.test_paired_sig,
          post_t.test_paired_sig,
          by = "mz_rt"))
mz_rt .y. group1 group2 n1 n2 statistic df p p.signif
1122.0248_4.125 rel_abund_log2 Red Yellow 11 11 16.568040 10 0.0000000 ****
1122.0249_4.032 rel_abund_log2 Red Yellow 11 11 17.935274 10 0.0000000 ****
175.0241_0.753 rel_abund_log2 Red Yellow 11 11 -2.426977 10 0.0356000 *
178.0524_2.721 rel_abund_log2 Red Yellow 11 11 -2.604367 10 0.0263000 *
201.0227_4.086 rel_abund_log2 Red Yellow 11 11 18.752278 10 0.0000000 ****
201.0228_4.555 rel_abund_log2 Red Yellow 11 11 20.576006 10 0.0000000 ****
206.9967_2.418 rel_abund_log2 Red Yellow 11 11 -2.516755 10 0.0306000 *
217.0172_4.4 rel_abund_log2 Red Yellow 11 11 4.679864 10 0.0008680 ***
217.0173_3.88 rel_abund_log2 Red Yellow 11 11 2.291675 10 0.0449000 *
253.0503_5.048 rel_abund_log2 Red Yellow 11 11 10.636744 10 0.0000009 ****
255.0674_5.078 rel_abund_log2 Red Yellow 11 11 3.816934 10 0.0033900 **
257.0816_6.056 rel_abund_log2 Red Yellow 11 11 7.084909 10 0.0000336 ****
297.0975_4.072 rel_abund_log2 Red Yellow 11 11 10.343403 10 0.0000012 ****
297.0975_4.498 rel_abund_log2 Red Yellow 11 11 13.921226 10 0.0000001 ****
333.0047_4.33 rel_abund_log2 Red Yellow 11 11 9.840711 10 0.0000018 ****
333.0066_3.893 rel_abund_log2 Red Yellow 11 11 10.103779 10 0.0000015 ****
335.0244_4.36 rel_abund_log2 Red Yellow 11 11 11.248800 10 0.0000005 ****
345.1554_4.506 rel_abund_log2 Red Yellow 11 11 -2.481438 10 0.0325000 *
345.1933_4.201 rel_abund_log2 Red Yellow 11 11 -2.488524 10 0.0321000 *
361.1499_3.066 rel_abund_log2 Red Yellow 11 11 -2.509862 10 0.0309000 *
363.021_3.933 rel_abund_log2 Red Yellow 11 11 3.950894 10 0.0027300 **
363.0234_4.453 rel_abund_log2 Red Yellow 11 11 3.098551 10 0.0113000 *
365.0863_4.095 rel_abund_log2 Red Yellow 11 11 8.889569 10 0.0000046 ****
366.0851_4.55 rel_abund_log2 Red Yellow 11 11 4.001611 10 0.0025100 **
369.0829_3.476 rel_abund_log2 Red Yellow 11 11 -2.431822 10 0.0353000 *
393.0495_3.605 rel_abund_log2 Red Yellow 11 11 6.076526 10 0.0001190 ***
413.1426_4.51 rel_abund_log2 Red Yellow 11 11 -2.673485 10 0.0234000 *
427.197_3.64 rel_abund_log2 Red Yellow 11 11 -2.619251 10 0.0256000 *
427.197_4.049 rel_abund_log2 Red Yellow 11 11 -2.382279 10 0.0385000 *
429.0815_4.032 rel_abund_log2 Red Yellow 11 11 14.300935 10 0.0000001 ****
429.082_3.756 rel_abund_log2 Red Yellow 11 11 13.732174 10 0.0000001 ****
429.083_3.201 rel_abund_log2 Red Yellow 11 11 11.870765 10 0.0000003 ****
431.0979_3.907 rel_abund_log2 Red Yellow 11 11 9.146268 10 0.0000036 ****
433.0646_4.045 rel_abund_log2 Red Yellow 11 11 2.550534 10 0.0288000 *
433.1136_4.519 rel_abund_log2 Red Yellow 11 11 4.442153 10 0.0012500 **
433.113_4.886 rel_abund_log2 Red Yellow 11 11 14.223055 10 0.0000001 ****
445.0782_4.484 rel_abund_log2 Red Yellow 11 11 6.830648 10 0.0000457 ****
447.0928_3.777 rel_abund_log2 Red Yellow 11 11 3.852655 10 0.0032000 **
447.092_4.187 rel_abund_log2 Red Yellow 11 11 2.517924 10 0.0305000 *
449.1074_4.301 rel_abund_log2 Red Yellow 11 11 3.914249 10 0.0028900 **
459.093_3.801 rel_abund_log2 Red Yellow 11 11 17.666591 10 0.0000000 ****
493.1666_4.573 rel_abund_log2 Red Yellow 11 11 6.227474 10 0.0000979 ****
497.0695_3.785 rel_abund_log2 Red Yellow 11 11 13.235046 10 0.0000001 ****
509.0384_0.699 rel_abund_log2 Red Yellow 11 11 8.337022 10 0.0000082 ****
509.0409_3.291 rel_abund_log2 Red Yellow 11 11 10.024150 10 0.0000016 ****
521.1082_4.508 rel_abund_log2 Red Yellow 11 11 6.840537 10 0.0000451 ****
525.0334_3.606 rel_abund_log2 Red Yellow 11 11 10.067446 10 0.0000015 ****
572.2105_4.512 rel_abund_log2 Red Yellow 11 11 -3.073439 10 0.0118000 *
576.1384_0.705 rel_abund_log2 Red Yellow 11 11 -3.123052 10 0.0108000 *
605.1126_3.023 rel_abund_log2 Red Yellow 11 11 7.143170 10 0.0000313 ****
617.1836_4.515 rel_abund_log2 Red Yellow 11 11 4.484883 10 0.0011700 **
639.0783_3.758 rel_abund_log2 Red Yellow 11 11 8.315119 10 0.0000084 ****
691.3179_4.171 rel_abund_log2 Red Yellow 11 11 -2.587562 10 0.0271000 *
nrow(semi_join(post_noOutlier_t.test_paired_sig,
          post_t.test_paired_sig,
          by = "mz_rt"))
## [1] 53

Standard comparisons

Here, I want to only focus on the metabolites that I hypothesized to change. This way I can avoid multiple correction adjustments and see if I can capture any significant differences at different timepoints

Wrangle

stds_df_for_stats_wide <- df_for_stats %>%
  dplyr::select(!rel_abund) %>%
  pivot_wider(names_from = mz_rt,
              values_from = rel_abund_log2) %>%
  dplyr::select(c(1:11),
                "178.0515_3.479", #hippuric acid
                "179.0556_0.643", #glucose
                "154.0621_0.609", #histidine
                "191.0203_0.697", #citric acid
                "212.0027_3.304", #indoxyl sulfate
                "253.0503_5.048", #daidzein
                "257.0816_6.056" #O-DMA
                ) 

# make tidy df
stds_df_forstats_tidy <- stds_df_for_stats_wide %>%
  pivot_longer(cols = 12:ncol(.),
               names_to = "mz_rt",
               values_to = "rel_abund_log2")
# changing factor levels for pre_post_intervention
stds_df_forstats_tidy$pre_post_intervention <- factor(stds_df_forstats_tidy$pre_post_intervention,
                              levels = c("pre_Yellow", "post_Yellow", "pre_Red", "post_Red"))

levels(stds_df_forstats_tidy$pre_post_intervention)  
## [1] "pre_Yellow"  "post_Yellow" "pre_Red"     "post_Red"

Boxplots

stds_df_forstats_tidy %>% 
  ggplot(aes(x = pre_post_intervention, y = rel_abund_log2, fill = Intervention)) +
  geom_boxplot(outlier.shape = NA) +
  scale_fill_manual(values = c("Yellow" = "gold",
                                           "Red" = "tomato1")) +
  geom_line(aes(group = Subject), colour = "purple", linewidth = 0.2) +
  facet_wrap(vars(mz_rt), scales = "free_y") + 
  theme_bw() 

Control t-test

# run paired t-tests for before vs. aftet control intervention
stds_ctrl_t.test_paired <- stds_df_forstats_tidy %>%
  filter(Intervention == "Yellow") %>%
  dplyr::select(Subject, pre_post, mz_rt, rel_abund_log2) %>%
  filter(Subject != 6106) %>% # remove outliers
  group_by(mz_rt) %>%
  t_test(rel_abund_log2 ~ pre_post, 
         paired = TRUE) %>% 
  add_significance()

Statistically significant features

# which features are significant?
stds_ctrl_t.test_paired_sig <- stds_ctrl_t.test_paired %>%
  filter(p <= 0.05)
tibble(stds_ctrl_t.test_paired_sig)
## # A tibble: 1 × 10
##   mz_rt         .y.   group1 group2    n1    n2 statistic    df       p p.signif
##   <chr>         <chr> <chr>  <chr>  <int> <int>     <dbl> <dbl>   <dbl> <chr>   
## 1 154.0621_0.6… rel_… post   pre       11    11     -3.54    10 0.00533 **
# how many are significant?
nrow(stds_ctrl_t.test_paired_sig)
## [1] 1

Red t-tests

# run paired t-tests for before vs. after red intervention
stds_red_t.test_paired <- stds_df_forstats_tidy %>%
  filter(Intervention == "Red") %>%
  dplyr::select(Subject, pre_post, mz_rt, rel_abund_log2) %>%
  filter(Subject != 6106) %>%
  group_by(mz_rt) %>%
  t_test(rel_abund_log2 ~ pre_post, 
         paired = TRUE) %>% 
  add_significance()

Statistically significant features

# which features are significant?
stds_red_t.test_paired_sig <- stds_red_t.test_paired %>%
  filter(p <= 0.05)
tibble(stds_red_t.test_paired_sig)
## # A tibble: 2 × 10
##   mz_rt         .y.   group1 group2    n1    n2 statistic    df       p p.signif
##   <chr>         <chr> <chr>  <chr>  <int> <int>     <dbl> <dbl>   <dbl> <chr>   
## 1 253.0503_5.0… rel_… post   pre       11    11      6.88    10 4.28e-5 ****    
## 2 257.0816_6.0… rel_… post   pre       11    11      6.51    10 6.85e-5 ****
# how many are significant?
nrow(stds_red_t.test_paired_sig)
## [1] 2

Intervention t-tests

# run paired t-tests for post-red vs. post-control intervention
stds_post_t.test_paired <- stds_df_forstats_tidy %>%
  filter(pre_post == "post") %>%
  dplyr::select(Subject, pre_post_intervention, mz_rt, rel_abund_log2) %>%
  filter(Subject != 6106) %>%
  group_by(mz_rt) %>%
  t_test(rel_abund_log2 ~ pre_post_intervention, 
         paired = TRUE) %>% 
  add_significance()

Statistically significant features

# which features are significant?
stds_post_t.test_paired_sig <- stds_post_t.test_paired %>%
  filter(p <= 0.05)
tibble(stds_post_t.test_paired_sig)
## # A tibble: 2 × 10
##   mz_rt         .y.   group1 group2    n1    n2 statistic    df       p p.signif
##   <chr>         <chr> <chr>  <chr>  <int> <int>     <dbl> <dbl>   <dbl> <chr>   
## 1 253.0503_5.0… rel_… post_… post_…    11    11    -10.6     10 9   e-7 ****    
## 2 257.0816_6.0… rel_… post_… post_…    11    11     -7.08    10 3.36e-5 ****
# how many are significant?
nrow(stds_post_t.test_paired_sig)
## [1] 2

Volcano plots

Post-intervention comparisons

Wrangle (no outlier)
# calculate mean rel abund (not log) by sample, and avg fold change (FC) diff by feature
red_v_yel_volcano_data_noOutlier <- df_for_stats %>%
  filter(pre_post == "post",
         Subject != 6106) %>% # remove outlier subj
  group_by(Intervention, mz_rt) %>%
  summarize(mean_rel_abund = mean(rel_abund)) %>%
  pivot_wider(names_from = Intervention, values_from = mean_rel_abund) %>%
  mutate(FC_postRed_div_postYellow = Red/Yellow) 

# bind back pval
red_v_yel_tobind_noOutlier <- post_noOutlier_t.test_paired %>%
  dplyr::select(p)

# calculate log2FC, and -log10p
red_v_yel_volcano_data_noOutlier <- 
  bind_cols(red_v_yel_volcano_data_noOutlier, red_v_yel_tobind_noOutlier) %>%
  mutate(log2_FC_postRed_div_postYellow = if_else(FC_postRed_div_postYellow > 0,
                                                  log2(FC_postRed_div_postYellow),
                                                  -(log2(abs(FC_postRed_div_postYellow)))), 
         neglog10p = -log10(p))


# create a df of features passing FC and pval cutoffs higher in post-Red
postRed_sig_red_v_yel_volcano_noOutlier <- red_v_yel_volcano_data_noOutlier %>%
  filter(p <= 0.05 & log2_FC_postRed_div_postYellow >= 0.6)

# create a df of features passing FC and pval cutoffs higher in post-control
postYellow_sig_red_v_yel_volcano_noOutlier <- red_v_yel_volcano_data_noOutlier %>%
  filter(p <= 0.05 & log2_FC_postRed_div_postYellow <= -0.6)  
Export sig features

Create feature lists with significant features along with their clusters

#post-Red list
postRed_sig_intrvntn_comp_clusters <- left_join(postRed_sig_red_v_yel_volcano_noOutlier, cluster_features,
                                               by = "mz_rt")

write_csv(postRed_sig_intrvntn_comp_clusters,
          "Feature lists/postRed-sigfeatures-intervntn-comp.csv")

#post-Yellow list
postYellow_sig_intrvntn_comp_clusters <- left_join(postYellow_sig_red_v_yel_volcano_noOutlier, cluster_features,
                                               by = "mz_rt")

write_csv(postYellow_sig_intrvntn_comp_clusters,
          "Feature lists/postYellow-sigfeatures-intervntn-comp.csv")
Plot
(red_v_yellow_volcano_noOutlier <- red_v_yel_volcano_data_noOutlier %>%
  ggplot(aes(x = log2_FC_postRed_div_postYellow, y = neglog10p, 
             text = glue("Mass_retention time: {mz_rt}
                         P-value: {p}
                         Fold change tomato/control: {round(FC_postRed_div_postYellow, 2)}"))) +
  geom_point(color = "grey") +
  geom_point(data = postRed_sig_intrvntn_comp_clusters, 
             aes(x = log2_FC_postRed_div_postYellow, y = neglog10p),
             color = "tomato") +
  geom_point(data = postYellow_sig_intrvntn_comp_clusters, 
             aes(x = log2_FC_postRed_div_postYellow, y = neglog10p),
             color = "yellow2") +
  geom_vline(xintercept = 0.6, linetype = "dashed", color = "grey") +
  geom_vline(xintercept = -0.6, linetype = "dashed", color = "grey") +
  geom_hline(yintercept = 1.3, linetype = "dashed", color = "grey") +
  coord_cartesian(xlim = c(-5, 8)) +
  labs(title = "Volcano Plot of Features Different in People After Tomato-Soy and Control Juice Consumption",
       subtitle = "Red points are higher after tomato-soy juice consumption while yellow points are higher \nafter control tomato juice consumption. Subject 6106 removed",
       caption = "Vertical dashed lines represent a log2 fold change > 0.6 or < -0.6, and horizontal dashed line represents an FDR corrected \np-value of 0.05.",
       x = "Log2 Fold Change (TomatoSoy/Control)",
       y = "-Log10(P-value)") +
  theme_bw() +
  theme(plot.title = element_text(size = 12, hjust = 0),
        plot.caption = element_text(hjust = 0.5)))

(red_v_yellow_volcano_ggplotly_noOutlier <- ggplotly(red_v_yellow_volcano_noOutlier, tooltip = "text"))

Save plots

# save volcano plot
ggsave(plot = red_v_yellow_volcano_noOutlier,
       filename = "plots and figures/volcano plots/red_v_yellow_volcano_noOutlier.svg")

# save interactive volcano plot
saveWidget(widget = red_v_yellow_volcano_ggplotly_noOutlier,
           file = "plots and figures/volcano plots/interactive_redvyellow_volcano_plot_noOutlier.html")

Red

Wrangle (no outlier)
# calculate mean rel abund (not log) by sample, and avg fold change (FC) diff by feature
red_volcano_data_noOutlier <- df_for_stats %>%
  filter(Intervention == "Red",
         Subject != 6106) %>%
  group_by(pre_post, mz_rt) %>%
  summarize(mean_rel_abund = mean(rel_abund)) %>%
  pivot_wider(names_from = pre_post, values_from = mean_rel_abund) %>%
  mutate(FC_post_div_pre = post/pre) 

# bind back pval
red_tobind_noOutlier <- red_noOutlier_t.test_paired %>%
  dplyr::select(p)

# calculate log2FC, and -log10p
red_volcano_data_noOutlier <- 
  bind_cols(red_volcano_data_noOutlier, red_tobind_noOutlier) %>%
  mutate(log2_FC_post_div_pre = log2(FC_post_div_pre),
         neglog10p = -log10(p))


# create a df of features passing FC and pval cutoffs higher in post-intervention compared to pre
red_pre_v_post_volcano_noOutlier <- red_volcano_data_noOutlier %>%
  filter(p <= 0.05 & abs(log2_FC_post_div_pre) >= 0.6)
Export sig features

Create feature lists with significant features along with their clusters

red_sig_prepost_comp_clusters <- left_join(red_pre_v_post_volcano_noOutlier, cluster_features,
                                               by = "mz_rt")

write_csv(red_sig_prepost_comp_clusters,
          "Feature lists/Red-sigfeatures-PrevsPost-noOutliers.csv")
Plot
(red_volcano_noOutlier <- red_volcano_data_noOutlier %>%
  ggplot(aes(x = log2_FC_post_div_pre, y = neglog10p, 
             text = glue("Mass_retention time: {mz_rt}
                         P-value: {p}
                         Fold change post/pre: {round(FC_post_div_pre, 2)}"))) +
  geom_point(color = "grey") +
  geom_point(data = red_sig_prepost_comp_clusters, 
             aes(x = log2_FC_post_div_pre, y = neglog10p),
             color = "tomato") +
  geom_vline(xintercept = 0.6, linetype = "dashed", color = "grey") +
  geom_vline(xintercept = -0.6, linetype = "dashed", color = "grey") + 
  geom_hline(yintercept = 1.3, linetype = "dashed", color = "grey") +
  coord_cartesian(xlim = c(-5, 8)) +
  labs(title = "Volcano Plot of Features Different in People After Tomato-Soy Juice Consumption",
       subtitle = "Red points are higher after tomato-soy juice consumption when compared to prior to consumption",
       caption = "Vertical dashed lines represent an abs(log fold change) > 0.6, and horizontal dashed line represents an FDR corrected \np-value of 0.05.",
       x = "Log2 Fold Change (Post/Pre)",
       y = "-Log10(P-value)") +
  theme_bw() +
  theme(plot.title = element_text(size = 12, hjust = 0),
        plot.caption = element_text(hjust = 0.5)))

(red_volcano_ggplotly_noOutlier <- ggplotly(red_volcano_noOutlier, tooltip = "text"))

Save plots

# save volcano plot
ggsave(plot = red_volcano_noOutlier,
       filename = "plots and figures/volcano plots/red_volcano_noOutlier.svg")

# save interactive volcano plot
saveWidget(widget = red_volcano_ggplotly_noOutlier,
           file = "plots and figures/volcano plots/interactive_red_volcano_plot_noOutlier.html")

Yellow

Wrangle (no outlier)
# calculate mean rel abund (not log) by sample, and avg fold change (FC) diff by feature
yel_volcano_data_noOutlier <- df_for_stats %>%
  filter(Intervention == "Yellow",
         Subject != 6106) %>%
  group_by(pre_post, mz_rt) %>%
  summarize(mean_rel_abund = mean(rel_abund)) %>%
  pivot_wider(names_from = pre_post, values_from = mean_rel_abund) %>%
  mutate(FC_post_div_pre = post/pre) 

# bind back pval
yel_tobind_noOutlier <- ctrl_noOutlier_t.test_paired %>%
  dplyr::select(p)

# calculate log2FC, and -log10p
yel_volcano_data_noOutlier <- 
  bind_cols(yel_volcano_data_noOutlier, yel_tobind_noOutlier) %>%
  mutate(log2_FC_post_div_pre = log2(FC_post_div_pre),
         neglog10p = -log10(p))


# create a df of features passing FC and pval cutoffs higher in post-intervention compared to pre
yel_pre_v_post_volcano_noOutlier <- yel_volcano_data_noOutlier %>%
  filter(p <= 0.05 & abs(log2_FC_post_div_pre) >= 0.6)
Export sig features

Create feature lists with significant features along with their clusters

yel_sig_prepost_comp_clusters <- left_join(yel_pre_v_post_volcano_noOutlier, cluster_features,
                                               by = "mz_rt")

write_csv(yel_sig_prepost_comp_clusters,
          "Yellow-sigfeatures-PrevsPost-noOutliers.csv")
Plot
(yel_volcano_noOutlier <- yel_volcano_data_noOutlier %>%
  ggplot(aes(x = log2_FC_post_div_pre, y = neglog10p, 
             text = glue("Mass_retention time: {mz_rt}
                         P-value: {p}
                         Fold change post/pre: {round(FC_post_div_pre, 2)}"))) +
  geom_point(color = "grey") +
  geom_point(data = yel_sig_prepost_comp_clusters, 
             aes(x = log2_FC_post_div_pre, y = neglog10p),
             color = "yellow2") +
  geom_vline(xintercept = 0.6, linetype = "dashed", color = "grey") +
  geom_vline(xintercept = -0.6, linetype = "dashed", color = "grey") +
  geom_hline(yintercept = 1.3, linetype = "dashed", color = "grey") +
  coord_cartesian(xlim = c(-5, 8)) +
  labs(title = "Volcano Plot of Features Different in People After Control, Yellow Tomato Juice Consumption",
       subtitle = "Yellow points are higher after control juice consumption when compared to prior to consumption.\nSubject 6106 removed",
       caption = "Vertical dashed lines represent abs(log2 fold change) > 0.6, and horizontal dashed line represents an FDR corrected \np-value of 0.05.",
       x = "Log2 Fold Change (Post/Pre)",
       y = "-Log10(P-value)") +
  theme_bw() +
  theme(plot.title = element_text(size = 12, hjust = 0),
        plot.caption = element_text(hjust = 0.5)))

(yel_volcano_ggplotly_noOutlier <- ggplotly(yel_volcano_noOutlier, tooltip = "text"))

Save plots

# save volcano plot
ggsave(plot = yel_volcano_noOutlier,
       filename = "plots and figures/volcano plots/yel_volcano_noOutlier.svg")

# save interactive volcano plot
saveWidget(widget = yel_volcano_ggplotly_noOutlier,
           file = "plots and figures/volcano plots/interactive_yel_volcano_plot_noOutlier.html")

Joined lists

Here, I want to venn significant features before I begin to look more into them. I am interested in the following effects: tomato effect, lycopene and/or soy isoflavones effect.

Tomato effect

  1. Tomato effect: join a list that only keeps features that are both significant in pre vs. post-red and pre vs. post-yellow. Manually deleted the features that don’t have the same directionality
# keep only features present in both pre vs post red and pre vs post yellow
tomato_effect <- inner_join(red_sig_prepost_comp_clusters,
                            yel_sig_prepost_comp_clusters,
                            by = "mz_rt")
dim(tomato_effect)
## [1]  6 25

Export venned list

write_csv(tomato_effect,
          "Feature lists/sig-features-tomato-effect.csv")

Mummichog matches

# read in hits from red 
red_mummichog_hits <- read_csv("../mummichog analysis/red-c18-mixed mode results-integ/red-c18-mummichog_matched_compound_all.csv") %>%
  mutate(Query.Mass = round(Query.Mass, digits = 4)) %>% # keep 4 decimal points for mass
  unite(mz_rt,
        c("Query.Mass", "Retention.Time"),
        sep = "_")

Mummichog makes a list of hits for all of the compounds, so we only need to do an inner join for one of the lists. The outcome would be the same for all of the lists used since I have to input my whole dataset (no cutoffs) into analysis.

mummichog_mass_matches_tomato <- inner_join(tomato_effect,
                                            red_mummichog_hits,
                                            by = "mz_rt")

length(unique(mummichog_mass_matches_tomato$mz_rt)) # how many?
## [1] 0
tibble(unique(mummichog_mass_matches_tomato$mz_rt)) # which features have a hit with mummichog?
## # A tibble: 0 × 1
## # ℹ 1 variable: unique(mummichog_mass_matches_tomato$mz_rt) <chr>

Boxplots

all sig tomato features
# metabs with pval < 0.05 and fc >= 1.51
sigmetabs_tomato_effect <- tomato_effect$mz_rt 
tomato_effect_df_for_stats_wide <- df_for_stats %>%
  dplyr::select(!rel_abund) %>%
  pivot_wider(names_from = mz_rt,
              values_from = rel_abund_log2) %>%
  dplyr::select(c(1:11),
                (all_of(sigmetabs_tomato_effect)))

# make tidy df
tomato_effect_df_for_stats_tidy <- tomato_effect_df_for_stats_wide %>%
  pivot_longer(cols = 12:ncol(.),
               names_to = "mz_rt",
               values_to = "rel_abund_log2")
# changing factor levels for pre_post_intervention
tomato_effect_df_for_stats_tidy$pre_post_intervention <- factor(tomato_effect_df_for_stats_tidy$pre_post_intervention,
                              levels = c("pre_Yellow", "post_Yellow", "pre_Red", "post_Red"))

levels(tomato_effect_df_for_stats_tidy$pre_post_intervention)  
## [1] "pre_Yellow"  "post_Yellow" "pre_Red"     "post_Red"
tomato_effect_df_for_stats_tidy %>% 
  ggplot(aes(x = pre_post_intervention, y = rel_abund_log2, fill = Intervention)) +
  geom_boxplot(outlier.shape = NA) +
  scale_fill_manual(values = c("Yellow" = "gold",
                                           "Red" = "tomato1")) +
  geom_line(aes(group = Subject), fill = "brown", linewidth = 0.2) +
  facet_wrap(vars(mz_rt), scales = "free_y") + 
  theme_clean() 

Lyc/soy effect

  1. lycopene and/or soy isoflavones effect: join a list that only keeps features that are:
  • significantly different between post-Red and post-Yellow,
  • and significant between pre- and post-Red.
  • remove features that are significant between pre-Yellow and post-Yellow.
# combine sig features from post-red vs post-yellow
sig_postintervention_noOutlier <- full_join(postRed_sig_intrvntn_comp_clusters,
                                               postYellow_sig_intrvntn_comp_clusters)
dim(sig_postintervention_noOutlier)
## [1] 59 13
# select only sig features that are present when comparing pre-Red to post-Red
lyc_soy_effect <- inner_join(sig_postintervention_noOutlier,
                             red_sig_prepost_comp_clusters,
                             by = "mz_rt") 
dim(lyc_soy_effect)
## [1] 53 25

Export venned list

write_csv(lyc_soy_effect,
          "Feature lists/sig-features-lyc-soy-effect.csv")

Mummichog matches

Mummichog makes a list of hits for all of the compounds, so we only need to do an inner join for one of the lists. The outcome would be the same for all of the lists used since I have to input my whole dataset (no cutoffs) into analysis.

mummichog_mass_matches_lycsoy <- inner_join(lyc_soy_effect,
                                            red_mummichog_hits,
                                            by = "mz_rt")

length(unique(mummichog_mass_matches_lycsoy$mz_rt)) # how many?
## [1] 3
tibble(unique(mummichog_mass_matches_lycsoy$mz_rt)) # which features have a hit with mummichog?
## # A tibble: 3 × 1
##   `unique(mummichog_mass_matches_lycsoy$mz_rt)`
##   <chr>                                        
## 1 253.0503_5.048                               
## 2 359.1353_0.806                               
## 3 361.1499_3.066
# map KEGG IDs to compound names
lycsoy_KEGGmatches <- as.data.frame(cpdkegg2name(mummichog_mass_matches_lycsoy$Matched.Compound))

mummichog_mass_matches_lycsoy$NAME <- lycsoy_KEGGmatches$NAME

Boxplots

all sig tomato features
# metabs with pval < 0.05 and fc >= 1.51
sigmetabs_lycsoy_effect <- lyc_soy_effect$mz_rt 
lycsoy_effect_df_for_stats_wide <- df_for_stats %>%
  dplyr::select(!rel_abund) %>%
  pivot_wider(names_from = mz_rt,
              values_from = rel_abund_log2) %>%
  dplyr::select(c(1:11),
                all_of(sigmetabs_lycsoy_effect))

# make tidy df
lycsoy_effect_df_for_stats_tidy <- lycsoy_effect_df_for_stats_wide %>%
  pivot_longer(cols = 12:ncol(.),
               names_to = "mz_rt",
               values_to = "rel_abund_log2")
# changing factor levels for pre_post_intervention
lycsoy_effect_df_for_stats_tidy$pre_post_intervention <- factor(lycsoy_effect_df_for_stats_tidy$pre_post_intervention,
                              levels = c("pre_Yellow", "post_Yellow", "pre_Red", "post_Red"))

levels(lycsoy_effect_df_for_stats_tidy$pre_post_intervention)  
## [1] "pre_Yellow"  "post_Yellow" "pre_Red"     "post_Red"
lycsoy_effect_df_for_stats_tidy %>% 
  ggplot(aes(x = pre_post_intervention, y = rel_abund_log2, fill = Intervention)) +
  geom_boxplot(outlier.shape = NA) +
  scale_fill_manual(values = c("Yellow" = "gold",
                                           "Red" = "tomato1")) +
  geom_line(aes(group = Subject), linewidth = 0.2) +
  facet_wrap(vars(mz_rt), scales = "free_y") + 
  theme_clean() 

Low carotenoid tomato effect

  1. yellow tomato effect: use list that only keeps features that are both significant between post-Red and post-Yellow timepoints, and significant between pre- and post-Yellow. These features are NOT significant between pre-Yellow and post-Yellow.
# sig features from post-red vs post-yellow
dim(sig_postintervention_noOutlier)
## [1] 59 13
# select only sig features that are present when comparing pre-Yellow to post-Yellow
low_carot_tomato_effect <- inner_join(sig_postintervention_noOutlier,
                             yel_sig_prepost_comp_clusters,
                             by = "mz_rt") 
dim(low_carot_tomato_effect)
## [1]  3 25

Export venned list

write_csv(low_carot_tomato_effect,
          "Feature lists/sig-features-low-carot-tomato-effect.csv")

Mummichog masses

mummichog_mass_matches_yellow_tomato <- inner_join(low_carot_tomato_effect,
                                            red_mummichog_hits,
                                            by = "mz_rt")

tibble(unique(mummichog_mass_matches_yellow_tomato$mz_rt)) # which features have a hit with mummichog?
## # A tibble: 0 × 1
## # ℹ 1 variable: unique(mummichog_mass_matches_yellow_tomato$mz_rt) <chr>
length(unique(mummichog_mass_matches_yellow_tomato$mz_rt)) # how many?
## [1] 0

Boxplots

all sig yellow tom features
# metabs with pval < 0.05 and fc >= 1.51
sigmetabs_yellow_effect <- as.character(low_carot_tomato_effect$mz_rt)
yellow_effect_df_for_stats_wide <- df_for_stats %>%
  dplyr::select(!rel_abund) %>%
  pivot_wider(names_from = mz_rt,
              values_from = rel_abund_log2) %>%
  dplyr::select(c(1:11),
                all_of(sigmetabs_yellow_effect))

# make tidy df
yellow_effect_df_for_stats_tidy <- yellow_effect_df_for_stats_wide %>%
  pivot_longer(cols = 12:ncol(.),
               names_to = "mz_rt",
               values_to = "rel_abund_log2")
# changing factor levels for pre_post_intervention
yellow_effect_df_for_stats_tidy$pre_post_intervention <- factor(yellow_effect_df_for_stats_tidy$pre_post_intervention,
                              levels = c("pre_Yellow", "post_Yellow", "pre_Red", "post_Red"))

levels(yellow_effect_df_for_stats_tidy$pre_post_intervention)  
## [1] "pre_Yellow"  "post_Yellow" "pre_Red"     "post_Red"
yellow_effect_df_for_stats_tidy %>% 
  ggplot(aes(x = pre_post_intervention, y = rel_abund_log2, fill = Intervention)) +
  geom_boxplot(outlier.shape = NA) +
  scale_fill_manual(values = c("Yellow" = "gold",
                                           "Red" = "tomato1")) +
  geom_line(aes(group = Subject), fill = "brown", linewidth = 0.2) +
  facet_wrap(vars(mz_rt), scales = "free_y") + 
  theme_clean() 

Immuno Correlations

IL-5, IL-12p70, and GM-CSF were significantly decreased after tomato-soy intervention (only when comparing pre to post in Red) according to Wilcoxon rank-sum tests (p<0.05). Immune cell types were significantly altered in all 3 comparisons - so let’s see how these significant immuno outcomes correlate with metabolites found to be significant at p > 0.05 and FC >=1.61.

Import other outcomes (carotenoids and immunology data)

# load data
carot_immunology_meta <- read_excel("CompiledData_Results_Meta.xlsx",
                         sheet = "metadata_corrected_withsequence")

# clean up variable names 
carot_immunology_meta <- clean_names(carot_immunology_meta)

Wrangle

# convert variables that should be factors to factors
carot_immunology_meta <- carot_immunology_meta %>%
  filter(intervention != "Baseline") %>%
  mutate(across(.cols = c("patient_id", "period", 
                          "intervention", "intervention_week", 
                          "pre_post", "sex", "sequence"),
                .fns = as.factor))


# some stuff came in as characters but should be numeric
carot_immunology_meta <- carot_immunology_meta %>%
  mutate(across(.cols = c("il_2", "il_10", "il_13", "il_4"),
                .fns = as.numeric))



# changing factor levels for pre_post
carot_immunology_meta$pre_post <- factor(carot_immunology_meta$pre_post,
                              levels = c("pre", "post"))

levels(carot_immunology_meta$pre_post)        
## [1] "pre"  "post"
# Calculate total_cis_lyc, total_lyc, and total_carotenoids
carot_immunology_meta <- carot_immunology_meta %>%
  mutate(total_cis_lyc = other_cis_lyc + x5_cis_lyc,
         total_lyc = all_trans_lyc + total_cis_lyc,
         total_carotenoids = lutein + zeaxanthin + b_cryptoxanthin + 
                             a_carotene + b_carotene + total_lyc)

Rm outliers

# take outliers out of carot_immuno df 
carot_immunology_meta_noOutlier <- carot_immunology_meta %>%
  filter(patient_id != 6106)

# add sig immuno outcome columns to dataset
forcorr_metabslog2_immuno_noOutlier <- df_for_stats_wide_noOutlier %>%
  mutate(il_5 = carot_immunology_meta_noOutlier$il_5,
         il_12p70 = carot_immunology_meta_noOutlier$il_12p70,
         gm_csf = carot_immunology_meta_noOutlier$gm_csf,
         total_lyc = carot_immunology_meta_noOutlier$total_lyc,
         # sig immune cells pre vs. post red
         CD45ROpos_CD45RAneg_EMCD8 = carot_immunology_meta_noOutlier$x08_cd45ro_cd45ra_em_cd8,
         CD19posCD3neg_Bcells = carot_immunology_meta_noOutlier$x25_cd19_cd3_b_cells,
         CD27neg_IgDpos_naiveBcells = carot_immunology_meta_noOutlier$x26_cd27_ig_d_naive_b_cells,
         # sig immune cells post-yellow vs. post red
         CD16negNKcells = carot_immunology_meta_noOutlier$x38_cd16_nk_cells,
         CD14posMDSCs = carot_immunology_meta_noOutlier$x40_cd14_mdsc_mono)

Here, I am going to look at correlations between fold change differences and sig metabolites from the lycopene/soy effect list

More wrangling

No outliers

Subset df’s into pre and post

# pre
forcorr_pre_metabslog2_immuno_noOutlier <- forcorr_metabslog2_immuno_noOutlier %>%
  dplyr::select(Subject, Intervention, pre_post, 12:ncol(.)) %>%
  filter(pre_post == "pre")

# post 
forcorr_post_metabslog2_immuno_noOutlier <- forcorr_metabslog2_immuno_noOutlier %>%
  dplyr::select(Subject, Intervention, pre_post, 12:ncol(.)) %>%
  filter(pre_post == "post")

Create df with differences calculated for each outcome

# difference for calculated for each outcome
forcorr_diff_red_metabslog2_immuno_noOutlier <- forcorr_post_metabslog2_immuno_noOutlier[,-c(1:3)] - forcorr_pre_metabslog2_immuno_noOutlier[,-c(1:3)]

Lycsoy metab list Corr

These are correlations based on significant metabolites with FDR < 0.05 AND FC > 1.51 (from lyc/soy effect list) against immuno outcomes that were significant (padj < 0.05) when comparing pre to post red intervention.

# add subject and intervention back to df. Select only significant metabolites (pval > 0.05 and FC >=1.51) that are in lyc/soy effect list
lyc_soy_forcorr_diff_red_metabslog2_immuno_noOutlier <- forcorr_diff_red_metabslog2_immuno_noOutlier %>%
  mutate(Subject = forcorr_post_metabslog2_immuno_noOutlier$Subject,
         Intervention = forcorr_post_metabslog2_immuno_noOutlier$Intervention) %>%
  filter(Intervention == "Red") %>%
  dplyr::select(Subject, Intervention, il_5, il_12p70, gm_csf, total_lyc, CD45ROpos_CD45RAneg_EMCD8, CD19posCD3neg_Bcells, CD27neg_IgDpos_naiveBcells, CD16negNKcells, CD14posMDSCs, all_of(lyc_soy_effect$mz_rt))

# correlation table
lycsoy_red_corr_results_metabs_immuno_diff_noOutlier <- lyc_soy_forcorr_diff_red_metabslog2_immuno_noOutlier %>% 
  correlate(method = "spearman") %>%
  rearrange() %>%
  shave()

kable(lycsoy_red_corr_results_metabs_immuno_diff_noOutlier, format = "markdown", digits = 3)
term il_12p70 CD14posMDSCs il_5 CD16negNKcells CD45ROpos_CD45RAneg_EMCD8 gm_csf total_lyc CD19posCD3neg_Bcells CD27neg_IgDpos_naiveBcells 605.1126_3.023 447.0928_3.777 255.0674_5.078 217.0173_3.88 525.0334_3.606 393.0495_3.605 497.0695_3.785 217.0172_4.4 576.1384_0.705 445.0782_4.484 257.0816_6.056 447.092_4.187 459.093_3.801 369.0829_3.476 335.0244_4.36 431.0979_3.907 1122.0249_4.032 521.1082_4.508 365.0863_4.095 201.0227_4.086 509.0409_3.291 1122.0248_4.125 617.1836_4.515 433.1136_4.519 253.0503_5.048 429.083_3.201 297.0975_4.072 509.0384_0.699 413.1436_3.2 449.1074_4.301 427.197_4.049 359.1353_0.806 201.0228_4.555 493.1666_4.573 366.0851_4.55 363.021_3.933 433.113_4.886 363.0234_4.453 297.0975_4.498 427.197_3.64 691.3179_4.171 413.1426_4.219 639.0783_3.758 345.1933_4.201 373.1141_3.685 345.1554_4.506 333.0047_4.33 572.2105_4.512 429.082_3.756 413.1426_4.51 361.1499_3.066 429.0815_4.032 333.0066_3.893
il_12p70 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
CD14posMDSCs 0.200 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
il_5 0.573 0.300 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
CD16negNKcells 0.500 0.336 0.655 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
CD45ROpos_CD45RAneg_EMCD8 0.527 -0.173 0.127 0.082 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
gm_csf 0.382 0.091 -0.064 -0.300 0.618 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
total_lyc -0.009 0.264 -0.009 0.355 -0.045 0.045 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
CD19posCD3neg_Bcells 0.255 -0.364 0.073 0.336 0.500 0.200 0.236 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
CD27neg_IgDpos_naiveBcells 0.109 -0.464 -0.036 0.200 0.473 0.200 0.300 0.973 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
605.1126_3.023 -0.609 0.282 -0.136 -0.200 -0.073 -0.045 -0.155 -0.082 -0.055 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
447.0928_3.777 -0.073 0.164 -0.027 -0.191 0.282 0.745 0.264 0.145 0.200 0.291 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
255.0674_5.078 -0.273 -0.218 -0.073 -0.682 0.291 0.436 -0.418 -0.245 -0.155 0.382 0.464 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
217.0173_3.88 -0.182 0.109 -0.327 -0.118 -0.027 0.200 0.191 -0.345 -0.273 0.100 0.282 -0.045 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
525.0334_3.606 -0.382 0.191 -0.309 -0.155 0.200 0.164 -0.173 0.109 0.109 0.709 0.436 0.327 -0.009 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
393.0495_3.605 -0.236 0.318 -0.164 -0.091 -0.218 0.200 0.145 -0.500 -0.445 0.145 0.545 0.118 0.727 0.291 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
497.0695_3.785 -0.155 0.173 -0.182 -0.109 0.164 0.482 -0.109 0.127 0.118 0.427 0.764 0.273 0.255 0.773 0.609 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
217.0172_4.4 -0.127 0.109 -0.382 -0.273 0.173 0.509 0.082 -0.245 -0.173 0.109 0.645 0.245 0.764 0.400 0.873 0.700 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
576.1384_0.705 -0.255 -0.691 -0.100 -0.209 0.318 -0.291 -0.491 0.118 0.191 0.173 -0.327 0.373 -0.055 0.118 -0.291 -0.182 -0.127 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
445.0782_4.484 -0.509 0.245 -0.209 -0.018 -0.282 0.018 0.109 0.073 0.082 0.564 0.555 0.091 0.000 0.764 0.473 0.791 0.355 -0.273 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
257.0816_6.056 -0.427 -0.573 -0.227 -0.664 0.100 -0.064 -0.727 -0.191 -0.100 0.327 -0.091 0.745 -0.109 0.227 -0.136 0.018 -0.009 0.791 -0.082 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
447.092_4.187 -0.073 -0.091 -0.318 -0.127 0.055 0.473 -0.064 0.336 0.309 0.091 0.627 0.045 0.127 0.482 0.382 0.836 0.509 -0.300 0.673 -0.109 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
459.093_3.801 -0.309 0.091 -0.227 -0.073 -0.064 0.200 -0.155 0.200 0.155 0.455 0.536 0.173 -0.109 0.773 0.318 0.845 0.318 -0.191 0.900 0.027 0.836 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
369.0829_3.476 -0.273 -0.018 -0.073 0.236 0.082 -0.364 -0.082 -0.173 -0.164 0.255 -0.036 0.036 0.218 0.527 0.418 0.300 0.345 0.427 0.345 0.173 0.000 0.273 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
335.0244_4.36 -0.300 -0.655 -0.209 -0.518 0.255 0.209 -0.145 -0.100 0.036 0.009 0.209 0.655 0.282 -0.155 0.064 -0.100 0.209 0.573 -0.264 0.618 -0.091 -0.191 0.073 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
431.0979_3.907 -0.364 -0.300 -0.109 -0.536 -0.091 0.345 -0.245 -0.300 -0.218 0.191 0.536 0.691 0.309 0.018 0.409 0.318 0.382 0.109 0.191 0.464 0.327 0.264 -0.055 0.736 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
1122.0249_4.032 0.027 -0.827 -0.109 -0.191 0.145 0.191 -0.064 0.355 0.418 -0.455 0.127 0.136 0.073 -0.409 -0.109 -0.064 0.036 0.291 -0.227 0.236 0.300 -0.045 -0.218 0.655 0.527 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
521.1082_4.508 -0.382 0.009 -0.127 -0.118 -0.309 0.182 0.345 -0.200 -0.109 0.055 0.682 0.191 0.409 0.164 0.773 0.536 0.609 -0.318 0.600 -0.136 0.518 0.455 0.218 0.264 0.627 0.282 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
365.0863_4.095 -0.327 -0.109 -0.245 0.064 -0.218 0.091 0.536 0.109 0.209 -0.064 0.564 -0.136 0.455 0.155 0.673 0.500 0.600 -0.264 0.564 -0.309 0.555 0.391 0.264 0.118 0.309 0.327 0.882 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
201.0227_4.086 0.136 -0.727 -0.218 -0.155 0.373 0.391 -0.109 0.400 0.427 -0.409 0.273 0.145 0.191 -0.145 0.045 0.209 0.291 0.255 -0.100 0.173 0.518 0.164 -0.027 0.582 0.482 0.909 0.300 0.373 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
509.0409_3.291 -0.536 -0.536 -0.609 -0.355 0.055 0.045 0.155 0.400 0.491 0.273 0.109 0.100 0.145 0.109 -0.227 0.009 -0.027 0.282 0.118 0.218 0.245 0.182 -0.109 0.491 0.300 0.482 0.091 0.209 0.455 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
1122.0248_4.125 0.091 -0.855 -0.218 -0.164 0.273 0.182 -0.264 0.418 0.455 -0.427 0.045 0.064 0.118 -0.200 -0.073 0.100 0.164 0.427 -0.182 0.309 0.418 0.064 -0.027 0.518 0.355 0.909 0.136 0.273 0.936 0.409 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
617.1836_4.515 -0.255 -0.209 -0.282 0.118 -0.064 0.127 0.527 0.209 0.300 -0.082 0.491 -0.209 0.618 0.064 0.600 0.418 0.609 -0.136 0.382 -0.309 0.509 0.264 0.255 0.236 0.300 0.445 0.755 0.936 0.518 0.373 0.418 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
433.1136_4.519 -0.409 -0.573 0.027 -0.100 -0.309 -0.464 -0.564 0.018 0.027 0.218 -0.273 0.136 -0.055 -0.055 -0.145 -0.045 -0.255 0.582 0.055 0.582 0.064 0.145 0.145 0.373 0.418 0.464 0.027 -0.036 0.309 0.336 0.482 0.036 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
253.0503_5.048 -0.336 -0.536 -0.436 -0.791 0.218 0.409 -0.500 -0.164 -0.073 0.145 0.364 0.827 0.091 0.273 0.164 0.327 0.373 0.418 0.100 0.755 0.336 0.300 0.073 0.745 0.764 0.473 0.282 0.055 0.545 0.364 0.482 0.045 0.309 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
429.083_3.201 -0.200 -0.291 -0.236 -0.218 0.000 0.327 -0.327 0.182 0.145 0.209 0.445 0.236 0.173 0.282 0.227 0.591 0.300 -0.009 0.445 0.191 0.791 0.691 -0.018 0.291 0.655 0.518 0.427 0.318 0.645 0.473 0.545 0.382 0.500 0.545 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
297.0975_4.072 -0.064 -0.127 -0.109 0.100 0.118 0.245 0.118 -0.009 0.018 -0.091 0.564 0.091 0.473 0.318 0.755 0.664 0.755 -0.036 0.473 -0.091 0.609 0.491 0.564 0.236 0.418 0.327 0.773 0.782 0.545 -0.009 0.409 0.764 0.036 0.309 0.482 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
509.0384_0.699 -0.427 -0.318 -0.427 -0.336 0.282 0.009 -0.455 -0.027 -0.018 0.500 0.064 0.482 0.082 0.609 0.036 0.318 0.200 0.591 0.255 0.600 0.200 0.436 0.564 0.455 0.336 0.073 -0.009 -0.100 0.273 0.473 0.218 -0.009 0.382 0.636 0.473 0.255 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
413.1436_3.2 -0.636 -0.391 -0.327 -0.191 -0.436 -0.455 -0.009 0.055 0.182 0.145 0.000 0.000 -0.064 0.309 0.218 0.245 0.127 0.282 0.509 0.300 0.227 0.318 0.364 0.009 0.036 0.118 0.382 0.518 0.018 0.127 0.200 0.355 0.364 0.127 0.027 0.282 0.064 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
449.1074_4.301 -0.582 -0.055 -0.100 0.036 -0.364 -0.182 0.482 -0.109 0.000 0.200 0.445 0.100 0.236 0.200 0.545 0.300 0.318 -0.100 0.600 -0.100 0.236 0.364 0.418 0.273 0.436 0.173 0.864 0.809 0.118 0.236 -0.009 0.691 0.127 0.118 0.218 0.609 0.109 0.509 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
427.197_4.049 -0.418 -0.118 -0.573 0.118 -0.282 -0.345 0.309 0.000 0.045 -0.027 -0.045 -0.445 0.418 0.282 0.455 0.264 0.418 -0.009 0.427 -0.236 0.336 0.318 0.591 -0.100 -0.136 0.036 0.409 0.655 0.182 0.282 0.182 0.673 0.036 -0.082 0.155 0.564 0.245 0.518 0.509 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
359.1353_0.806 -0.082 -0.473 -0.191 0.136 0.209 0.027 -0.118 0.273 0.300 -0.045 0.191 -0.100 0.518 0.200 0.409 0.455 0.536 0.391 0.191 0.127 0.482 0.273 0.500 0.291 0.227 0.500 0.345 0.545 0.664 0.255 0.709 0.700 0.418 0.227 0.500 0.736 0.345 0.345 0.264 0.564 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
201.0228_4.555 -0.155 -0.618 -0.309 -0.109 0.164 0.173 0.145 0.245 0.300 -0.218 0.218 0.073 0.355 -0.182 0.109 0.055 0.236 0.218 -0.045 0.073 0.336 0.100 0.082 0.682 0.545 0.818 0.418 0.464 0.855 0.682 0.727 0.645 0.345 0.445 0.609 0.509 0.373 -0.018 0.400 0.355 0.582 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
493.1666_4.573 -0.273 -0.309 -0.355 -0.182 0.145 0.218 -0.064 -0.118 -0.073 0.127 0.345 0.227 0.709 0.145 0.527 0.364 0.618 0.245 0.136 0.191 0.373 0.236 0.391 0.627 0.636 0.473 0.500 0.455 0.636 0.473 0.500 0.636 0.327 0.518 0.645 0.682 0.582 -0.036 0.400 0.436 0.709 0.800 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
366.0851_4.55 -0.209 -0.155 -0.227 -0.155 -0.082 0.245 -0.145 -0.118 -0.118 0.009 0.536 0.255 0.245 0.382 0.636 0.700 0.600 -0.109 0.600 0.082 0.755 0.718 0.391 0.236 0.609 0.355 0.764 0.627 0.545 0.091 0.400 0.545 0.209 0.536 0.736 0.864 0.400 0.273 0.555 0.445 0.536 0.500 0.636 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
363.021_3.933 -0.373 -0.318 -0.245 -0.155 -0.064 -0.136 0.109 -0.255 -0.182 -0.091 0.145 0.300 0.091 0.136 0.336 0.082 0.255 0.218 0.227 0.200 0.082 0.218 0.582 0.527 0.445 0.300 0.564 0.436 0.355 0.209 0.209 0.373 0.127 0.473 0.209 0.591 0.491 0.264 0.691 0.464 0.245 0.555 0.527 0.627 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
433.113_4.886 -0.609 -0.482 -0.145 -0.100 -0.455 -0.555 -0.382 -0.073 -0.036 0.318 -0.236 0.036 0.136 0.027 0.036 0.009 -0.118 0.500 0.200 0.473 0.091 0.200 0.273 0.345 0.409 0.373 0.182 0.155 0.236 0.436 0.382 0.227 0.945 0.245 0.491 0.136 0.418 0.464 0.327 0.291 0.473 0.400 0.445 0.273 0.236 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
363.0234_4.453 -0.345 -0.427 -0.227 -0.118 0.009 -0.036 0.300 -0.055 0.045 -0.155 0.255 0.255 0.145 0.009 0.282 0.045 0.245 0.191 0.173 0.109 0.118 0.145 0.427 0.627 0.491 0.491 0.627 0.564 0.500 0.373 0.336 0.545 0.118 0.436 0.245 0.600 0.373 0.245 0.755 0.436 0.309 0.718 0.573 0.573 0.945 0.227 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
297.0975_4.498 -0.336 -0.336 -0.445 -0.018 -0.182 0.100 0.355 0.291 0.345 -0.073 0.391 -0.218 0.409 0.073 0.382 0.400 0.409 -0.173 0.445 -0.236 0.682 0.455 0.082 0.218 0.373 0.573 0.673 0.818 0.636 0.600 0.536 0.882 0.218 0.182 0.655 0.636 0.136 0.327 0.600 0.664 0.618 0.764 0.636 0.636 0.382 0.382 0.536 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
427.197_3.64 -0.536 -0.236 -0.627 0.027 -0.300 -0.391 0.309 0.027 0.100 0.018 -0.064 -0.364 0.364 0.273 0.373 0.200 0.345 0.091 0.418 -0.127 0.291 0.300 0.573 0.018 -0.073 0.109 0.409 0.645 0.209 0.409 0.218 0.664 0.118 0.000 0.164 0.509 0.309 0.582 0.564 0.982 0.536 0.418 0.445 0.418 0.527 0.373 0.518 0.682 NA NA NA NA NA NA NA NA NA NA NA NA NA NA
691.3179_4.171 -0.555 -0.291 -0.300 -0.136 -0.645 -0.445 -0.064 -0.145 -0.091 -0.036 0.000 -0.073 -0.091 0.182 0.327 0.264 0.109 -0.009 0.582 0.127 0.409 0.500 0.327 -0.018 0.245 0.227 0.582 0.573 0.164 0.091 0.236 0.382 0.418 0.200 0.327 0.445 0.109 0.800 0.618 0.591 0.291 0.191 0.136 0.618 0.518 0.527 0.445 0.518 0.627 NA NA NA NA NA NA NA NA NA NA NA NA NA
413.1426_4.219 -0.573 -0.718 -0.364 -0.118 -0.245 -0.591 -0.082 0.127 0.245 -0.018 -0.291 -0.045 0.000 0.082 -0.009 -0.073 -0.027 0.636 0.145 0.427 0.009 0.064 0.491 0.336 0.064 0.400 0.182 0.364 0.300 0.382 0.482 0.364 0.582 0.218 0.073 0.264 0.327 0.809 0.427 0.582 0.527 0.364 0.245 0.209 0.473 0.664 0.482 0.382 0.682 0.664 NA NA NA NA NA NA NA NA NA NA NA NA
639.0783_3.758 -0.436 -0.327 -0.509 -0.355 -0.036 0.091 -0.300 0.045 0.055 0.218 0.309 0.327 -0.064 0.609 0.255 0.600 0.327 0.145 0.636 0.336 0.691 0.809 0.409 0.218 0.427 0.255 0.436 0.355 0.445 0.373 0.364 0.273 0.300 0.645 0.700 0.555 0.700 0.391 0.391 0.464 0.382 0.418 0.473 0.818 0.609 0.355 0.509 0.518 0.500 0.636 0.391 NA NA NA NA NA NA NA NA NA NA NA
345.1933_4.201 -0.718 -0.300 -0.645 -0.318 -0.364 -0.118 0.245 0.109 0.218 0.200 0.318 0.045 0.073 0.427 0.318 0.427 0.300 -0.045 0.709 0.064 0.564 0.618 0.264 0.136 0.282 0.236 0.636 0.709 0.264 0.536 0.218 0.591 0.164 0.327 0.418 0.464 0.309 0.700 0.709 0.691 0.300 0.400 0.318 0.591 0.545 0.355 0.573 0.736 0.764 0.782 0.582 0.736 NA NA NA NA NA NA NA NA NA NA
373.1141_3.685 -0.636 -0.473 -0.227 0.009 -0.509 -0.636 -0.045 -0.018 0.073 0.100 -0.145 -0.127 0.109 0.127 0.255 0.118 0.073 0.382 0.400 0.264 0.164 0.255 0.509 0.173 0.182 0.300 0.436 0.545 0.191 0.245 0.345 0.491 0.645 0.100 0.218 0.409 0.209 0.855 0.618 0.636 0.555 0.300 0.291 0.391 0.445 0.773 0.436 0.500 0.700 0.827 0.900 0.418 0.645 NA NA NA NA NA NA NA NA NA
345.1554_4.506 -0.618 -0.709 -0.345 -0.173 -0.318 -0.618 -0.136 0.055 0.173 0.009 -0.300 0.018 -0.055 0.073 -0.018 -0.091 -0.073 0.627 0.164 0.482 -0.009 0.082 0.464 0.355 0.127 0.391 0.200 0.327 0.264 0.364 0.445 0.300 0.627 0.264 0.091 0.227 0.336 0.818 0.445 0.527 0.455 0.336 0.218 0.227 0.500 0.700 0.491 0.345 0.636 0.709 0.991 0.418 0.591 0.909 NA NA NA NA NA NA NA NA
333.0047_4.33 -0.336 -0.591 -0.473 -0.409 0.164 0.191 -0.236 0.091 0.127 0.045 0.236 0.418 0.082 0.227 0.073 0.264 0.227 0.336 0.200 0.418 0.455 0.436 0.236 0.655 0.627 0.609 0.345 0.245 0.727 0.636 0.600 0.318 0.400 0.773 0.727 0.464 0.745 0.082 0.327 0.291 0.418 0.800 0.718 0.673 0.691 0.418 0.700 0.564 0.373 0.345 0.373 0.809 0.536 0.282 0.391 NA NA NA NA NA NA NA
572.2105_4.512 -0.564 -0.564 -0.336 -0.045 -0.255 -0.600 -0.064 -0.118 -0.018 0.009 -0.273 -0.036 0.236 0.082 0.218 -0.055 0.136 0.600 0.127 0.364 -0.055 0.036 0.691 0.409 0.164 0.318 0.291 0.400 0.282 0.309 0.391 0.436 0.545 0.227 0.100 0.427 0.445 0.645 0.527 0.682 0.591 0.455 0.482 0.336 0.655 0.682 0.618 0.400 0.755 0.618 0.918 0.409 0.518 0.873 0.909 0.445 NA NA NA NA NA NA
429.082_3.756 -0.464 -0.473 -0.573 -0.391 0.018 0.064 -0.355 0.082 0.091 0.255 0.164 0.300 0.091 0.427 0.100 0.400 0.227 0.309 0.391 0.418 0.564 0.618 0.300 0.427 0.509 0.418 0.273 0.209 0.573 0.645 0.500 0.273 0.491 0.682 0.800 0.409 0.818 0.191 0.264 0.409 0.455 0.645 0.673 0.673 0.536 0.545 0.491 0.573 0.473 0.436 0.400 0.891 0.609 0.373 0.418 0.927 0.455 NA NA NA NA NA
413.1426_4.51 -0.682 -0.682 -0.382 -0.209 -0.355 -0.627 -0.127 0.000 0.118 0.064 -0.291 0.055 -0.045 0.091 -0.009 -0.100 -0.082 0.609 0.191 0.491 -0.018 0.109 0.473 0.391 0.182 0.373 0.227 0.318 0.245 0.418 0.400 0.291 0.636 0.300 0.127 0.218 0.400 0.782 0.491 0.536 0.409 0.373 0.264 0.255 0.564 0.727 0.545 0.364 0.655 0.718 0.973 0.464 0.627 0.900 0.991 0.455 0.918 0.482 NA NA NA NA
361.1499_3.066 -0.436 -0.682 -0.436 -0.018 -0.136 -0.418 -0.064 0.318 0.382 -0.082 -0.155 -0.164 -0.027 0.227 0.027 0.164 0.073 0.464 0.318 0.245 0.345 0.345 0.500 0.191 0.027 0.455 0.245 0.473 0.482 0.436 0.600 0.482 0.500 0.227 0.318 0.445 0.400 0.736 0.409 0.718 0.655 0.482 0.336 0.436 0.491 0.582 0.500 0.591 0.782 0.718 0.909 0.618 0.700 0.836 0.882 0.527 0.827 0.591 0.864 NA NA NA
429.0815_4.032 -0.564 -0.418 -0.518 -0.418 -0.145 -0.018 -0.364 -0.127 -0.100 0.291 0.182 0.355 0.200 0.373 0.264 0.391 0.291 0.291 0.418 0.455 0.500 0.582 0.355 0.491 0.645 0.400 0.418 0.282 0.509 0.564 0.436 0.318 0.564 0.700 0.791 0.473 0.782 0.245 0.400 0.418 0.455 0.636 0.736 0.736 0.618 0.645 0.555 0.573 0.482 0.527 0.427 0.864 0.618 0.473 0.464 0.900 0.536 0.964 0.536 0.555 NA NA
333.0066_3.893 -0.491 -0.527 -0.500 -0.382 0.000 -0.018 -0.291 -0.045 -0.009 0.173 0.127 0.373 0.118 0.309 0.145 0.264 0.218 0.391 0.291 0.464 0.391 0.473 0.400 0.591 0.591 0.473 0.355 0.245 0.582 0.600 0.491 0.300 0.500 0.718 0.691 0.464 0.818 0.200 0.400 0.409 0.436 0.718 0.727 0.682 0.736 0.564 0.691 0.536 0.491 0.464 0.482 0.845 0.591 0.436 0.509 0.964 0.591 0.955 0.582 0.600 0.964 NA

Look for strongly correlated outcomes. R^2 >= to 0.5

lycsoy_red_sigcorr_metabsP05_FC1.6_immunodata <- lycsoy_red_corr_results_metabs_immuno_diff_noOutlier %>%
  dplyr::select(term, il_5, il_12p70, gm_csf, total_lyc, CD45ROpos_CD45RAneg_EMCD8, CD19posCD3neg_Bcells, CD27neg_IgDpos_naiveBcells) %>%
  filter(abs(lycsoy_red_corr_results_metabs_immuno_diff_noOutlier$il_5) >= 0.5 |
           abs(lycsoy_red_corr_results_metabs_immuno_diff_noOutlier$il_12p70) >= 0.5 |
           abs(lycsoy_red_corr_results_metabs_immuno_diff_noOutlier$gm_csf) >= 0.5 |
           abs(lycsoy_red_corr_results_metabs_immuno_diff_noOutlier$total_lyc) >= 0.5 |
           abs(lycsoy_red_corr_results_metabs_immuno_diff_noOutlier$CD45ROpos_CD45RAneg_EMCD8) >= 0.5 |
           abs(lycsoy_red_corr_results_metabs_immuno_diff_noOutlier$CD19posCD3neg_Bcells) >= 0.5 |
           abs(lycsoy_red_corr_results_metabs_immuno_diff_noOutlier$CD27neg_IgDpos_naiveBcells) >= 0.5 |
           abs(lycsoy_red_corr_results_metabs_immuno_diff_noOutlier$CD16negNKcells) >= 0.5 |
           abs(lycsoy_red_corr_results_metabs_immuno_diff_noOutlier$CD14posMDSCs) >= 0.5) 

kable(lycsoy_red_sigcorr_metabsP05_FC1.6_immunodata, digits = 3, caption = "sig metabolites in lyc/soy effect list and sig immuno outcomes with strong correlations. R^2 >= to 0.5. Based on Pre vs. post-red log2fc")
sig metabolites in lyc/soy effect list and sig immuno outcomes with strong correlations. R^2 >= to 0.5. Based on Pre vs. post-red log2fc
term il_5 il_12p70 gm_csf total_lyc CD45ROpos_CD45RAneg_EMCD8 CD19posCD3neg_Bcells CD27neg_IgDpos_naiveBcells
il_5 NA 0.573 NA NA NA NA NA
CD16negNKcells 0.655 0.500 NA NA NA NA NA
CD45ROpos_CD45RAneg_EMCD8 0.127 0.527 NA NA NA NA NA
gm_csf -0.064 0.382 NA NA 0.618 NA NA
CD19posCD3neg_Bcells 0.073 0.255 0.200 0.236 0.500 NA NA
CD27neg_IgDpos_naiveBcells -0.036 0.109 0.200 0.300 0.473 0.973 NA
605.1126_3.023 -0.136 -0.609 -0.045 -0.155 -0.073 -0.082 -0.055
447.0928_3.777 -0.027 -0.073 0.745 0.264 0.282 0.145 0.200
255.0674_5.078 -0.073 -0.273 0.436 -0.418 0.291 -0.245 -0.155
393.0495_3.605 -0.164 -0.236 0.200 0.145 -0.218 -0.500 -0.445
217.0172_4.4 -0.382 -0.127 0.509 0.082 0.173 -0.245 -0.173
576.1384_0.705 -0.100 -0.255 -0.291 -0.491 0.318 0.118 0.191
445.0782_4.484 -0.209 -0.509 0.018 0.109 -0.282 0.073 0.082
257.0816_6.056 -0.227 -0.427 -0.064 -0.727 0.100 -0.191 -0.100
335.0244_4.36 -0.209 -0.300 0.209 -0.145 0.255 -0.100 0.036
431.0979_3.907 -0.109 -0.364 0.345 -0.245 -0.091 -0.300 -0.218
1122.0249_4.032 -0.109 0.027 0.191 -0.064 0.145 0.355 0.418
365.0863_4.095 -0.245 -0.327 0.091 0.536 -0.218 0.109 0.209
201.0227_4.086 -0.218 0.136 0.391 -0.109 0.373 0.400 0.427
509.0409_3.291 -0.609 -0.536 0.045 0.155 0.055 0.400 0.491
1122.0248_4.125 -0.218 0.091 0.182 -0.264 0.273 0.418 0.455
617.1836_4.515 -0.282 -0.255 0.127 0.527 -0.064 0.209 0.300
433.1136_4.519 0.027 -0.409 -0.464 -0.564 -0.309 0.018 0.027
253.0503_5.048 -0.436 -0.336 0.409 -0.500 0.218 -0.164 -0.073
413.1436_3.2 -0.327 -0.636 -0.455 -0.009 -0.436 0.055 0.182
449.1074_4.301 -0.100 -0.582 -0.182 0.482 -0.364 -0.109 0.000
427.197_4.049 -0.573 -0.418 -0.345 0.309 -0.282 0.000 0.045
201.0228_4.555 -0.309 -0.155 0.173 0.145 0.164 0.245 0.300
433.113_4.886 -0.145 -0.609 -0.555 -0.382 -0.455 -0.073 -0.036
427.197_3.64 -0.627 -0.536 -0.391 0.309 -0.300 0.027 0.100
691.3179_4.171 -0.300 -0.555 -0.445 -0.064 -0.645 -0.145 -0.091
413.1426_4.219 -0.364 -0.573 -0.591 -0.082 -0.245 0.127 0.245
639.0783_3.758 -0.509 -0.436 0.091 -0.300 -0.036 0.045 0.055
345.1933_4.201 -0.645 -0.718 -0.118 0.245 -0.364 0.109 0.218
373.1141_3.685 -0.227 -0.636 -0.636 -0.045 -0.509 -0.018 0.073
345.1554_4.506 -0.345 -0.618 -0.618 -0.136 -0.318 0.055 0.173
333.0047_4.33 -0.473 -0.336 0.191 -0.236 0.164 0.091 0.127
572.2105_4.512 -0.336 -0.564 -0.600 -0.064 -0.255 -0.118 -0.018
429.082_3.756 -0.573 -0.464 0.064 -0.355 0.018 0.082 0.091
413.1426_4.51 -0.382 -0.682 -0.627 -0.127 -0.355 0.000 0.118
361.1499_3.066 -0.436 -0.436 -0.418 -0.064 -0.136 0.318 0.382
429.0815_4.032 -0.518 -0.564 -0.018 -0.364 -0.145 -0.127 -0.100
333.0066_3.893 -0.500 -0.491 -0.018 -0.291 0.000 -0.045 -0.009

plot

lycsoy_red_ggcorr_noOutlier <- round(cor(lyc_soy_forcorr_diff_red_metabslog2_immuno_noOutlier[,-c(1:2)], method = "spearman"), digits = 2)


(lyc_soy_immuno_metabs_ggcorrplot <- lycsoy_red_ggcorr_noOutlier %>%
  ggcorrplot(lab = TRUE, 
             outline.color = "white", type = "full", hc.order = FALSE,
             ggtheme = ggthemes::theme_clean(base_size = 8, base_family = "sans"),
  colors = c("#6D9EC1", "white", "#E46726")) +
  theme(axis.text.x = element_text(angle = 90, size = 12),
        axis.text.y = element_text(size = 12)))

Export corplot

ggsave(plot = lyc_soy_immuno_metabs_ggcorrplot,
       filename = "plots and figures/prepostRedFC-C18-Neg-lycsoy-Metabs-and-immunology-corrplot.svg",
       width = 45,
       height = 40,
       scale = 1)

export a df for isoflavones analysis

write_csv(imp_metabind_clust_log2_noQCs, file = "meta_omics_noQCs.csv")
LS0tCnRpdGxlOiAiVVNEQSBJbmZsYW1tYXRpb24gTWV0YWJvbG9taWNzIERhdGEgYW5hbHlzaXMiCnN1YnRpdGxlOiAiVXJpbmUsIEMxOCgtKSBMQ01TIgphdXRob3I6ICJNYXJpYSBTaG9sb2xhIgpkYXRlOiAnMjAyMy0wNi0wNScKb3V0cHV0OiAKICBodG1sX2RvY3VtZW50OgogICAgaGlnaGxpZ2h0OiBrYXRlCiAgICB0aGVtZTogeWV0aQogICAgdG9jOiB0cnVlCiAgICB0b2NfZmxvYXQ6IHRydWUKICAgIHRvY19kZXB0aDogNQogICAgY29kZV9kb3dubG9hZDogdHJ1ZQogICAgZmlnX3dpZHRoOiA3CmVkaXRvcl9vcHRpb25zOiAKICBjaHVua19vdXRwdXRfdHlwZTogaW5saW5lCi0tLQoKYGBge3Igc2V0dXAsIGluY2x1ZGU9RkFMU0V9IAprbml0cjo6b3B0c19jaHVuayRzZXQod2FybmluZyA9IEZBTFNFLCBtZXNzYWdlID0gRkFMU0UsIGVjaG89VFJVRSkgCmBgYAoKIyBMb2FkIGxpYnJhcmllcwpgYGB7ciwgd2FybmluZyA9IEZBTFNFLCBtZXNzYWdlID0gRkFMU0V9CmxpYnJhcnkodGlkeXZlcnNlKSAjIGZvciBldmVyeXRoaW5nCmxpYnJhcnkocmVhZHhsKSAjIGZvciByZWFkaW5nIGluIGV4Y2VsIGZpbGVzCmxpYnJhcnkoamFuaXRvcikgIyBkYXRhIGNoZWNrcyBhbmQgY2xlYW5pbmcKbGlicmFyeShnbHVlKSAjIGZvciBlYXN5IHBhc3RpbmcKbGlicmFyeShGYWN0b01pbmVSKSAjIGZvciBQQ0EKbGlicmFyeShmYWN0b2V4dHJhKSAjIGZvciBQQ0EKbGlicmFyeShyc3RhdGl4KSAjIGZvciBzdGF0cwpsaWJyYXJ5KHBoZWF0bWFwKSAjIGZvciBoZWF0bWFwcwpsaWJyYXJ5KHBsb3RseSkgIyBmb3IgaW50ZXJhY3RpdmUgcGxvdHMKbGlicmFyeShodG1sd2lkZ2V0cykgIyBmb3Igc2F2aW5nIGludGVyYWN0aXZlIHBsb3RzCmxpYnJhcnkoZGV2dG9vbHMpCmxpYnJhcnkobm90YW1lKSAjIHVzZWQgZm9yIGZlYXR1cmUgY2x1c3RlcmluZwpsaWJyYXJ5KGRvUGFyYWxsZWwpCmxpYnJhcnkoaWdyYXBoKSAjIGZlYXR1cmUgY2x1c3RlcmluZwpsaWJyYXJ5KGdncHVicikgIyB2aXN1YWxpemF0aW9ucwpsaWJyYXJ5KGtuaXRyKSAjIGNsZWFuIHRhYmxlIHByaW50aW5nCmxpYnJhcnkocm1hcmtkb3duKQpsaWJyYXJ5KG1peE9taWNzKSAjIGZvciBtdWx0aWxldmVsIFBDQXMKbGlicmFyeShjb3JycikKbGlicmFyeShnZ2NvcnJwbG90KQpsaWJyYXJ5KGdndGhlbWVzKQpsaWJyYXJ5KGdndGV4dCkKbGlicmFyeShQQ0F0b29scykKbGlicmFyeShwYXRodmlldykgIyBmb3IgZnVuY3Rpb25hbCBhbmFseXNpcyBhbmQgS0VHRyBhbm5vdGF0aW9uCmBgYAoKIyBSZWFkIGluIGRhdGEKYGBge3J9CiMgcmF3IGZpbHRlcmVkIG1ldGFib2xvbWljcyBkYXRhIGluIEMxOCAoLSkKb21pY3NkYXRhIDwtIHJlYWRfY3N2KCJGZWF0dXJlIGxpc3RzL0MxOE5lZy1EYXRhLUZpbHRlcmVkLWluLVIuY3N2IikKCiMgbWV0YWRhdGEKbWV0YWRhdGEgPC0gcmVhZF9leGNlbCgiTWV0YWRhdGEtdXJpbmUtYzE4bmVnLnhsc3giKQpgYGAKCiMgV3JhbmdsZSBkYXRhCgpgYGB7cn0KbWV0YWRhdGEgPC0gbWV0YWRhdGEgJT4lCiAgcmVuYW1lKCJzYW1wbGVfSUQiID0gU2FtcGxlX0lEKQpgYGAKCgpgYGB7cn0KIyByZW5hbWUgInJvdyBJRCIKb21pY3NkYXRhIDwtIG9taWNzZGF0YSAlPiUKICByZW5hbWUoInJvd19JRCIgPSBgcm93IElEYCkKCiMgaG93IG1hbnkgZmVhdHVyZXMKbnJvdyhvbWljc2RhdGEpCgojIGFyZSB0aGVyZSBhbnkgZHVwbGljYXRlcz8Kb21pY3NkYXRhICU+JSBnZXRfZHVwZXMobXpfcnQpCgpgYGAKCmBgYHtyfQojIHJlbW92ZSBkdXBlcwpvbWljc2RhdGEgPC0gb21pY3NkYXRhICU+JSAKICBkaXN0aW5jdChtel9ydCwgLmtlZXBfYWxsID0gVFJVRSkKCiMgY2hlY2sgYWdhaW4gZm9yIGR1cGVzCm9taWNzZGF0YSAlPiUgZ2V0X2R1cGVzKG16X3J0KQoKIyBob3cgbWFueSBmZWF0dXJlcwpucm93KG9taWNzZGF0YSkKYGBgCgoKU29tZXRpbWVzIGEgd2VpcmQgbG9naWNhbCBjb2x1bW4gKGxnbCkgY29tZXMgdXAgaW4gbXkgZGF0YS4gTGV0J3MgY2hlY2sgaWYgaXQncyB0aGVyZQoKYGBge3J9CmNvbG5hbWVzKG9taWNzZGF0YSkKYGBgCgoKYGBge3J9CiMgcmVtb3ZlIHdlaXJkIGxnbCBjb2x1bW4Kb21pY3NkYXRhIDwtIG9taWNzZGF0YSAlPiUKICBkcGx5cjo6c2VsZWN0KCF3aGVyZShpcy5sb2dpY2FsKSkgCgpjb2xuYW1lcyhvbWljc2RhdGEpCmBgYAoKCgpgYGB7cn0KIyBjcmVhdGUgbG9uZyBkZiBmb3Igb21pY3MgZGYKb21pY3NkYXRhX3RpZHkgPC0gb21pY3NkYXRhICU+JQogIHBpdm90X2xvbmdlcihjb2xzID0gMzpuY29sKC4pLAogICAgICAgICAgICAgICBuYW1lc190byA9ICJzYW1wbGVfSUQiLAogICAgICAgICAgICAgICB2YWx1ZXNfdG8gPSAicGVha19oZWlnaHQiKQoKIyBjb21iaW5lIG1ldGEgYW5kIG9taWNzIGRmcwptZXRhX29taWNzIDwtIGZ1bGxfam9pbihvbWljc2RhdGFfdGlkeSwKICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFkYXRhLAogICAgICAgICAgICAgICAgICAgICAgICAgYnkgPSBjKCJzYW1wbGVfSUQiID0gInNhbXBsZV9JRCIpKQoKIyBzZXBhcmF0ZSBteiBhbmQgcnQKbWV0YV9vbWljc19zZXAgPC0gbWV0YV9vbWljcyAlPiUKICBzZXBhcmF0ZShjb2wgPSBtel9ydCwKICAgICAgICAgICBpbnRvID0gYygibXoiLCAicnQiKSwKICAgICAgICAgICBzZXAgPSAiXyIpIAoKIyBjb252ZXJ0IGNvbHVtbnMgdG8gY29ycmVjdCB0eXBlCm1ldGFfb21pY3Nfc2VwJG16IDwtIGFzLm51bWVyaWMobWV0YV9vbWljc19zZXAkbXopCm1ldGFfb21pY3Nfc2VwJHJ0IDwtIGFzLm51bWVyaWMobWV0YV9vbWljc19zZXAkcnQpCm1ldGFfb21pY3Nfc2VwJFN1YmplY3QgPC0gYXMuY2hhcmFjdGVyKG1ldGFfb21pY3Nfc2VwJFN1YmplY3QpCm1ldGFfb21pY3Nfc2VwJEludGVydmVudGlvbiA8LSBhcy5jaGFyYWN0ZXIobWV0YV9vbWljc19zZXAkSW50ZXJ2ZW50aW9uKQoKIyByZWFycmFuZ2UgY29sdW1uIG9yZGVyCm1ldGFfb21pY3Nfc2VwIDwtIG1ldGFfb21pY3Nfc2VwICU+JQogIGRwbHlyOjpzZWxlY3Qoc2FtcGxlX0lELCBwcmVfcG9zdCwgSW50ZXJ2ZW50aW9uLCBldmVyeXRoaW5nKCkpCgpzdHIobWV0YV9vbWljc19zZXApCgoKYGBgCgoKYGBge3J9CiMgcmVwbGFjZSBOQSdzIGluIHN1YmplY3QgYW5kIGludGVydmVudGlvbiBjb2x1bW5zIHdpdGggUUMKbWV0YV9vbWljc19zZXAkU3ViamVjdCA8LSBtZXRhX29taWNzX3NlcCRTdWJqZWN0ICU+JQogIHJlcGxhY2VfbmEoIlFDIikKCm1ldGFfb21pY3Nfc2VwJEludGVydmVudGlvbiA8LSBtZXRhX29taWNzX3NlcCRJbnRlcnZlbnRpb24gJT4lCiAgcmVwbGFjZV9uYSgiUUMiKQpgYGAKCgojIERhdGEgc3VtbWFyaWVzCgojIyBOdW1iZXIgb2YgbWFzc2VzIGRldGVjdGVkCmBgYHtyfQpucm93KG9taWNzZGF0YSkKYGBgCgoKIyMgTWFzcyByYW5nZSBmb3IgbWV0YWJvbGl0ZXMgZGV0ZWN0ZWQ/CgpgYGB7cn0KcmFuZ2UobWV0YV9vbWljc19zZXAkbXopCmBgYAoKIyMgUlQgcmFuZ2UgZm9yIG1ldGFib2xpdGVzIGRldGVjdGVkPwoKYGBge3J9CnJhbmdlKG1ldGFfb21pY3Nfc2VwJHJ0KQpgYGAKCiMjIG1hc3MgdnMgUlQgc2NhdHRlcnBsb3QKYGBge3J9CiMgcGxvdAoocGxvdF9tenZzcnQgPC0gbWV0YV9vbWljc19zZXAgJT4lCiAgZ2dwbG90KGFlcyh4ID0gcnQsIHkgPSBteikpICsKICBnZW9tX3BvaW50KCkgKwogIHRoZW1lX21pbmltYWwoKSArCiAgbGFicyh4ID0gIlJldGVudGlvbiB0aW1lLCBtaW4iLAogICAgICAgeSA9ICJtL3osIG5ldXRyYWwiLAogICAgICAgdGl0bGUgPSAibXogYWNyb3NzIFJUIGZvciBhbGwgZmVhdHVyZXMiKSkKYGBgCgojIyBIaXN0b2dyYW0gZm9yIG1hc3MgcmFuZ2UKYGBge3J9Cm1ldGFfb21pY3Nfc2VwICU+JQogIGdncGxvdChhZXMoeCA9IG16KSkgKwogIGdlb21faGlzdG9ncmFtKGJpbndpZHRoID0gMjUpICsKICB0aGVtZV9taW5pbWFsKCkgKwogIGxhYnMoeCA9ICJNb25vaXNvdG9waWMgbWFzcyAoYW11KSIsCiAgICAgICB5ID0gIk51bWJlciBvZiBmZWF0dXJlcyIsCiAgICAgICB0aXRsZSA9ICJEaXN0cmlidXRpb24gb2YgZmVhdHVyZXMgYnkgbWFzcyIpCmBgYAoKIyMgSGlzdG9ncmFtIGZvciBSVAoKYGBge3J9Cm1ldGFfb21pY3Nfc2VwICU+JQogIGdncGxvdChhZXMoeCA9IHJ0KSkgKwogIGdlb21faGlzdG9ncmFtKGJpbndpZHRoID0gMC4xKSArICMgNiBzZWNvbmQgYmlucwogIHRoZW1lX21pbmltYWwoKSArCiAgbGFicyh4ID0gIlJldGVudGlvbiB0aW1lIiwKICAgICAgIHkgPSAiTnVtYmVyIG9mIGZlYXR1cmVzIiwKICAgICAgIHRpdGxlID0gIkRpc3RyaWJ1dGlvbiBvZiBmZWF0dXJlcyBieSByZXRlbnRpb24gdGltZSIpCmBgYAoKCiMgTkFzIGFuZCBpbXB1dGluZwoKIyMgTkFzCgpgYGB7cn0KIyBzYW1wbGVzIG9ubHkgKG5vIFFDcykKb21pY3NkYXRhX25vUUMgPC0gb21pY3NkYXRhICU+JQogIGRwbHlyOjpzZWxlY3QoLWNvbnRhaW5zKCJRQyIpKQoKI05BcyBpbiBzYW1wbGVzIG9ubHk/Ck5BYnlSb3dfbm9RQyA8LSByb3dTdW1zKGlzLm5hKG9taWNzZGF0YV9ub1FDWywtMV0pKQoKaGlzdChOQWJ5Um93X25vUUMsCiAgICAgYnJlYWtzID0gNDgsICMgYmVjYXVzZSB0aGVyZSBhcmUgNDggc2FtcGxlcyAKICAgICB4bGFiID0gIk51bWJlciBvZiBtaXNzaW5nIHZhbHVlcyIsCiAgICAgeWxhYiA9ICJOdW1iZXIgb2YgbWV0YWJvbGl0ZXMiLAogICAgIG1haW4gPSAiSG93IG1hbnkgbWlzc2luZyB2YWx1ZXMgYXJlIHRoZXJlPyIpCmBgYAoKQXJlIHRoZXJlIGFueSBtaXNzaW5nIHZhbHVlcyBpbiBRQ3M/IFRoZXJlIHNob3VsZG4ndCBiZSBhZnRlciBkYXRhIHByZXByb2Nlc3NpbmcvZmlsdGVyaW5nCmBgYHtyfQpvbWljc2RhdGFfUUMgPC0gb21pY3NkYXRhICU+JQogIGRwbHlyOjpzZWxlY3Qoc3RhcnRzX3dpdGgoIlAiKSkgCgpOQWJ5Um93X1FDIDwtIGNvbFN1bXMoaXMubmEob21pY3NkYXRhX1FDKSkKIyBsZXRzIGNvbmZpcm0gdGhhdCB0aGVyZSBhcmUgbm8gbWlzc2luZyB2YWx1ZXMgZnJvbSBteSBRQ3MKc3VtKE5BYnlSb3dfUUMpICMgbm8KYGBgCgoKYGBge3J9CiMgY2FsY3VsYXRlIGhvdyBtYW55IE5BcyB0aGVyZSBhcmUgcGVyIGZlYXR1cmUgaW4gd2hvbGUgZGF0YSBzZXQKY29udGFpbnNfTkFzIDwtIG1ldGFfb21pY3MgJT4lCiAgZ3JvdXBfYnkobXpfcnQpICU+JQogIGNvdW50KGlzLm5hKHBlYWtfaGVpZ2h0KSkgJT4lCiAgZmlsdGVyKGBpcy5uYShwZWFrX2hlaWdodClgID09IFRSVUUpCmthYmxlKGNvbnRhaW5zX05BcykKYGBgCgoKIyMgUmVtb3ZlIE5BcwoKCiMjIERhdGEgaW1wdXRhdGlvbgpgYGB7cn0KIyBpbXB1dGUgYW55IG1pc3NpbmcgdmFsdWVzIGJ5IHJlcGxhY2luZyB0aGVtIHdpdGggMS8yIG9mIHRoZSBsb3dlc3QgcGVhayBoZWlnaHQgdmFsdWUgb2YgYSBmZWF0dXJlIChpLmUuIGluIGEgcm93KS4KaW1wdXRlZF9vbWljc2RhdGEgPC0gb21pY3NkYXRhCgppbXB1dGVkX29taWNzZGF0YVtdIDwtIGxhcHBseShpbXB1dGVkX29taWNzZGF0YSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uKHgpIGlmZWxzZShpcy5uYSh4KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbih4LCBuYS5ybSA9IFRSVUUpLzIsIHgpKQoKZGltKGltcHV0ZWRfb21pY3NkYXRhKQpgYGAKCkFyZSB0aGVyZSBhbnkgTkFzPwpgYGB7cn0KaW1wdXRlZF9vbWljc2RhdGEgJT4lCiAgaXMubmEoKSAlPiUKICBzdW0oKQoKIyBpbXB1dGF0aW9ucyB3b3JrZWQKYGBgCgoKIyBDcmVhdGUgbmV3IGltcHV0ZWQgdGlkeSBkYXRhc2V0cwpgYGB7cn0KIyBjcmVhdGUgbG9uZyBkZiBmb3IgaW1wdXRlZCBvbWljcyBkZgppbXB1dGVkX29taWNzZGF0YV90aWR5IDwtIGltcHV0ZWRfb21pY3NkYXRhICU+JQogIHBpdm90X2xvbmdlcihjb2xzID0gMzpuY29sKC4pLAogICAgICAgICAgICAgICBuYW1lc190byA9ICJzYW1wbGVfSUQiLAogICAgICAgICAgICAgICB2YWx1ZXNfdG8gPSAicGVha19oZWlnaHQiKQoKIyBjb21iaW5lIG1ldGEgYW5kIGltcHV0ZWQgb21pY3MgZGZzCmltcF9tZXRhX29taWNzIDwtIGZ1bGxfam9pbihpbXB1dGVkX29taWNzZGF0YV90aWR5LAogICAgICAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGEsCiAgICAgICAgICAgICAgICAgICAgICAgICBieSA9IGMoInNhbXBsZV9JRCIgPSAic2FtcGxlX0lEIikpCgojIHNlcGFyYXRlIG16IGFuZCBydAppbXBfbWV0YV9vbWljc19zZXAgPC0gaW1wX21ldGFfb21pY3MgJT4lCiAgc2VwYXJhdGUoY29sID0gbXpfcnQsCiAgICAgICAgICAgaW50byA9IGMoIm16IiwgInJ0IiksCiAgICAgICAgICAgc2VwID0gIl8iKSAKCiMgY29udmVydCBjb2x1bW5zIHRvIGNvcnJlY3QgdHlwZQppbXBfbWV0YV9vbWljc19zZXAkbXogPC0gYXMubnVtZXJpYyhpbXBfbWV0YV9vbWljc19zZXAkbXopCmltcF9tZXRhX29taWNzX3NlcCRydCA8LSBhcy5udW1lcmljKGltcF9tZXRhX29taWNzX3NlcCRydCkKaW1wX21ldGFfb21pY3Nfc2VwJFN1YmplY3QgPC0gYXMuY2hhcmFjdGVyKGltcF9tZXRhX29taWNzX3NlcCRTdWJqZWN0KQppbXBfbWV0YV9vbWljc19zZXAkSW50ZXJ2ZW50aW9uIDwtIGFzLmNoYXJhY3RlcihpbXBfbWV0YV9vbWljc19zZXAkSW50ZXJ2ZW50aW9uKQpgYGAKCgojIE5vdGFtZSBmZWF0dXJlIHJlZHVjdGlvbgp2aWduZXR0ZSBmb3IgcmVmZXJlbmNlCmBgYHtyfQojYnJvd3NlVmlnbmV0dGVzKCJub3RhbWUiKQpgYGAKCkxldCdzIGxvb2sgYXQgd2hhdCBtYXNzZXMgY29tZSB1cCBhdCBlYWNoIFJUIGFnYWluCgpgYGB7cn0KIyBydCB2cyBteiBwbG90CmltcF9tZXRhX29taWNzX3NlcCAlPiUKICBnZ3Bsb3QoYWVzKHggPSBydCwgeSA9IG16KSkgKwogIGdlb21fcG9pbnQoKSArCiAgdGhlbWVfbWluaW1hbCgpICsKICBsYWJzKHggPSAiUlQgKG1pbikiLAogICAgICAgeSA9ICJteiIpCmBgYApUaGVyZSBhcmUgc2V2ZXJhbCBwb2ludHMgdGhhdCBhcmUgYXQgdGhlIHNhbWUgUlQsIG1lYW5pbmcgdGhleSBjb3VsZCBiZSBjb21pbmcgZnJvbSB0aGUgc2FtZSBjb21wb3VuZC4gV2UnbGwgcnVuIG5vdGFtZSBjbHVzdGVyaW5nIHRvIGNvbGxhcHNlIGZlYXR1cmVzIGNvbWluZyBmcm9tIG9uZSBtYXNzIGludG8gb25lIGZlYXR1cmUuCgojIyBEYXRhIHJlc3RydWN0dXJpbmcgZm9yIG5vdGFtZQpgYGB7cn0KIyBjcmVhdGUgZmVhdHVyZXMgbGlzdCBmcm9tIGltcHV0ZWQgZGF0YSBzZXQgdG8gb25seSBpbmNsdWRlIHVuaXF1ZSBmZWF0dXJlIElEJ3MgKG16X3J0KSwgbXogYW5kIFJUCmZlYXR1cmVzIDwtIGltcF9tZXRhX29taWNzX3NlcCAlPiUKICBjYmluZChpbXBfbWV0YV9vbWljcyRtel9ydCkgJT4lCiAgcmVuYW1lKCJtel9ydCIgPSAiaW1wX21ldGFfb21pY3MkbXpfcnQiKSAlPiUKICBkcGx5cjo6c2VsZWN0KGMobXpfcnQsIG16LCBydCkpICU+JQogIGRpc3RpbmN0KCkgIyByZW1vdmUgdGhlIGR1cGxpY2F0ZSByb3dzCgojIGNyZWF0ZSBhIHNlY29uZCBkYXRhIGZyYW1lIHdoaWNoIGlzIGp1c3QgaW1wX21ldGFfb21pY3MgcmVzdHJ1Y3R1cmVkIHRvIGFub3RoZXIgd2lkZSBmb3JtYXQKZGF0YV9ub3RhbWUgPC0gZGF0YS5mcmFtZShpbXB1dGVkX29taWNzZGF0YSAlPiUKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRwbHlyOjpzZWxlY3QoLXJvd19JRCkgJT4lCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0KCkpCgpkYXRhX25vdGFtZSA8LSBkYXRhX25vdGFtZSAlPiUKICB0aWJibGU6OnJvd25hbWVzX3RvX2NvbHVtbigpICU+JSAjIGNoYW5nZSBzYW1wbGVzIGZyb20gcm93bmFtZXMgdG8gaXRzIG93biBjb2x1bW4KICByb3dfdG9fbmFtZXMocm93X251bWJlciA9IDEpICMgY2hhbmdlIHRoZSBmZWF0dXJlIElEcyAobXpfcnQpIGZyb20gZmlyc3Qgcm93IG9icyBpbnRvIGNvbHVtbiBuYW1lcwoKCmBgYAoKQ2hlY2sgc3RydWN0dXJlcwpgYGB7cn0KIyBjaGVjayBpZiBteiBhbmQgcnQgYXJlIG51bWVyaWMKc3RyKGZlYXR1cmVzKQpgYGAKCmBgYHtyfQojIGNoZWNrIGlmIHJlc3VsdHMgYXJlIG51bWVyaWMKaGVhZChkYXRhX25vdGFtZSkKCiMgY2hhbmdlIHRvIHJlc3VsdHMgdG8gbnVtZXJpYwpkYXRhX25vdGFtZSA8LSBkYXRhX25vdGFtZSAlPiUKICBtdXRhdGVfYXQoLTEsIGFzLm51bWVyaWMpCgpoZWFkKGRhdGFfbm90YW1lKQpgYGAKCgojIyBGaW5kIGNvbm5lY3Rpb25zCmBgYHtyfQpjb25uZWN0aW9uIDwtIGZpbmRfY29ubmVjdGlvbnMoZGF0YSA9IGRhdGFfbm90YW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZXMgPSBmZWF0dXJlcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvcnJfdGhyZXNoID0gMC45LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnRfd2luZG93ID0gMS82MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWVfY29sID0gIm16X3J0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG16X2NvbCA9ICJteiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydF9jb2wgPSAicnQiKQoKaGVhZChjb25uZWN0aW9uKQpgYGAKCiMjIENsdXN0ZXJpbmcKYGBge3J9CmNsdXN0ZXJzIDwtIGZpbmRfY2x1c3RlcnMoY29ubmVjdGlvbnMgPSBjb25uZWN0aW9uLCBkX3RocmVzaCA9IDAuOCkKYGBgCgpgYGB7cn0KIyBhc3NpZ24gYSBjbHVzdGVyIElEIHRvIGFsbCBmZWF0dXJlcy4gQ2x1c3RlcnMgYXJlIG5hbWVkIGFmdGVyIGZlYXR1cmUgd2l0aCBoaWdoZXN0IG1lZGlhbiBwZWFrIGhlaWdodApmZWF0dXJlc19jbHVzdGVyZWQgPC0gYXNzaWduX2NsdXN0ZXJfaWQoZGF0YV9ub3RhbWUsIGNsdXN0ZXJzLCBmZWF0dXJlcywgbmFtZV9jb2wgPSAibXpfcnQiKQoKIyBsZXRzIHNlZSBob3cgbWFueSBmZWF0dXJlcyBhcmUgcmVtb3ZlZCB3aGVuIHdlIG9ubHkga2VlcCBvbmUgZmVhdHVyZSBwZXIgY2x1c3RlcgpwdWxsZWQgPC0gcHVsbF9jbHVzdGVycyhkYXRhX25vdGFtZSwgZmVhdHVyZXNfY2x1c3RlcmVkLCBuYW1lX2NvbCA9ICJtel9ydCIpCmNsdXN0ZXJfZGF0YSA8LSBwdWxsZWQkY2RhdGEKY2x1c3Rlcl9mZWF0dXJlcyA8LSBwdWxsZWQkY2ZlYXR1cmVzCgojIGhvdyBtdWNoIGRpZCB3ZSB0cmltIG91ciBkYXRhIGRvd24gYnk/Cm5yb3cob21pY3NkYXRhKSAtIG5yb3coY2x1c3Rlcl9mZWF0dXJlcykKCmBgYAoKCmBgYHtyfQojIGV4cG9ydCBjbHVzdGVyZWQgZmVhdHVyZSBsaXN0CndyaXRlX2NzdihjbHVzdGVyX2ZlYXR1cmVzLAogICAgICAgICAgIkZlYXR1cmUgbGlzdHMvYzE4bmVnLWNsdXN0ZXJlZC1mZWF0dXJlcy5jc3YiKQoKYGBgCgoKIyMgUmVkdWNlIGRhdGFzZXQgYmFzZWQgb24gY2x1c3RlcmluZwogCmBgYHtyfQojIHRyYW5zcG9zZSB0aGUgZnVsbCBkYXRhc2V0IGJhY2sgdG8gd2lkZSBzbyB0aGF0IGl0IGlzIG1vcmUgc2ltaWxhciB0byB0aGUgbm90YW1lIGRhdGFzZXQKaW1wX21ldGFfb21pY3Nfd2lkZSA8LSBpbXBfbWV0YV9vbWljcyAlPiUKICBkcGx5cjo6c2VsZWN0KC0icm93X0lEIikgJT4lCiAgcGl2b3Rfd2lkZXIobmFtZXNfZnJvbSA9IG16X3J0LAogICAgICAgICAgICAgIHZhbHVlc19mcm9tID0gcGVha19oZWlnaHQpCgojIGxpc3Qgb2YgcmVkdWNlZCBmZWF0dXJlcwpjbHVzdGVybmFtZXMgPC0gY2x1c3Rlcl9mZWF0dXJlcyRtel9ydAoKIyBzZWxlY3Qgb25seSB0aGUgZmVhdHVyZXMgYXJlIGluIHRoZSByZWR1Y2VkIGxpc3QKaW1wX2NsdXN0IDwtIGltcF9tZXRhX29taWNzX3dpZGVbLGMobmFtZXMoaW1wX21ldGFfb21pY3Nfd2lkZSkgJWluJSBjbHVzdGVybmFtZXMpXQoKIyBiaW5kIGJhY2sgc2FtcGxlIG5hbWVzCmltcF9jbHVzdCA8LSBjYmluZChpbXBfbWV0YV9vbWljc193aWRlWzFdLCBpbXBfY2x1c3QpCgp0aWJibGUoaW1wX2NsdXN0KQoKYGBgCgojIyBOZXcgbXogdnMgcnQgcGxvdAoKTGV0J3Mgc2VlIGhvdyBvdXIgY2x1c3RlcmVkIGRhdGEgbG9va3Mgbm93IGNvbXBhcmVkIHRvIHRoZSBvcmlnaW5hbAoKYGBge3J9CiMgcGxvdCBuZXcgcnQgdnMgbXogc2NhdHRlcnBsb3QgcG9zdC1jbHVzdGVyaW5nCihwbG90X216dnNydF9wb3N0Y2x1c3RlciA8LSBjbHVzdGVyX2ZlYXR1cmVzICU+JQogIGdncGxvdChhZXMoeCA9IHJ0LAogICAgICAgICAgICAgeSA9IG16KSkgKwogIGdlb21fcG9pbnQoKSArCiAgdGhlbWVfbWluaW1hbCgpICsKICBsYWJzKHggPSAiUmV0ZW50aW9uIHRpbWUsIG1pbiIsCiAgICAgICB5ID0gIm0veiwgbmV1dHJhbCIsCiAgICAgICB0aXRsZSA9ICJteiBhY3Jvc3MgUlQgZm9yIGFsbCBmZWF0dXJlcyBhZnRlciBjbHVzdGVyaW5nIikpCgoKYGBgCgoKYGBge3IsIGZpZy5oZWlnaHQ9MTAsIGZpZy5hc3A9MX0KIyBwbG90IGJvdGggc2NhdHRlcnBsb3RzIHRvIGNvbXBhcmUgd2l0aCBhbmQgd2l0aG91dCBub3RhbWUgY2x1c3RlcmluZwooc2NhdHRlcnBsb3RzIDwtIGdnYXJyYW5nZShwbG90X216dnNydCwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsb3RfbXp2c3J0X3Bvc3RjbHVzdGVyLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgbnJvdyA9IDIpKQpgYGAKClRoZXJlIGFyZSBzdGlsbCBzb21lIGZlYXR1cmVzIHRoYXQgbGluZSB1cCwgYnV0IHRoZSBjbHVzdGVyZWQgZGF0YSBsb29rcyBtdWNoIGJldHRlci4KCiMgV3JhbmdsZSBuZXcgZGF0YQoKYGBge3J9CiMgYmluZCBiYWNrIG5ldyBjbHVzdGVyZWQgZGF0YSB3aXRoIG1ldGFkYXRhCmltcF9tZXRhYmluZF9jbHVzdCA8LSByaWdodF9qb2luKG1ldGFkYXRhLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1wX2NsdXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSA9ICJzYW1wbGVfSUQiKQpgYGAKCiMgVmlzdWFsaXplIHVudHJhbnNmb3JtZWQgZGF0YQoKIyMgTW9yZSB3cmFuZ2xpbmcKYGBge3J9CiMgY2hhbmdlIG1ldGEgZGF0YSBjb2x1bW5zIHRvIGNoYXJhY3RlciBzbyB0aGF0IEkgY2FuIGNoYW5nZSBOQXMgZnJvbSBRQ3MgdG8gIlFDIgppbXBfbWV0YWJpbmRfY2x1c3QgPC0gaW1wX21ldGFiaW5kX2NsdXN0ICU+JQogIG11dGF0ZV9hdChjKCJTdWJqZWN0IiwKICAgICAgICAgICAgICAiUGVyaW9kIiwKICAgICAgICAgICAgICAiSW50ZXJ2ZW50aW9uIiwKICAgICAgICAgICAgICAicHJlX3Bvc3QiLAogICAgICAgICAgICAgICJzZXF1ZW5jZSIsCiAgICAgICAgICAgICAgIkludGVydmVudGlvbl93ZWVrIiwKICAgICAgICAgICAgICAiU2V4IiwKICAgICAgICAgICAgICAiQWdlIiwKICAgICAgICAgICAgICAiQk1JIiksCiAgICAgICAgICAgIGFzLmNoYXJhY3RlcikgCgojIHJlcGxhY2UgTkFzIGluIG1ldGFkYXRhIGNvbHVtbnMgZm9yIFFDcwppbXBfbWV0YWJpbmRfY2x1c3RbaXMubmEoaW1wX21ldGFiaW5kX2NsdXN0KV0gPC0gIlFDIgoKIyB1bml0ZSBwcmVfcG9zdCBjb2x1bW4gd2l0aCBpbnRlcnZlbnRpb24gY29sdW1uIHRvIGNyZWF0ZSBwcmVfaW50ZXJ2ZW50aW9uIGNvbHVtbgppbXBfbWV0YWJpbmRfY2x1c3QgPC0gaW1wX21ldGFiaW5kX2NsdXN0ICU+JQogIHVuaXRlKGNvbCA9ICJwcmVfcG9zdF9pbnRlcnZlbnRpb24iLAogICAgICAgIGMoInByZV9wb3N0IiwiSW50ZXJ2ZW50aW9uIiksCiAgICAgICAgc2VwID0gIl8iLAogICAgICAgIHJlbW92ZSA9IEZBTFNFKQoKIyBsb25nIGRmCmltcF9tZXRhYmluZF9jbHVzdF90aWR5IDwtIGltcF9tZXRhYmluZF9jbHVzdCAlPiUKICBwaXZvdF9sb25nZXIoY29scyA9IDEyOm5jb2woLiksCiAgICAgICAgICAgICAgIG5hbWVzX3RvID0gIm16X3J0IiwKICAgICAgICAgICAgICAgdmFsdWVzX3RvID0gInJlbF9hYnVuZCIpCgojIHN0cnVjdHVyZSBjaGVjawpzdHIoaW1wX21ldGFiaW5kX2NsdXN0X3RpZHkpCmBgYAoKCiMjIEJveHBsb3QKYGBge3J9CmltcF9tZXRhYmluZF9jbHVzdF90aWR5ICU+JQogIGdncGxvdChhZXMoeCA9IHNhbXBsZV9JRCwgeSA9IHJlbF9hYnVuZCwgY29sb3IgPSBJbnRlcnZlbnRpb24pKSArCiAgZ2VvbV9ib3hwbG90KGFscGhhID0gMC42KSArCiAgc2NhbGVfY29sb3JfbWFudWFsKHZhbHVlcyA9IGMoImxpZ2h0IGdyZXkiLCAidG9tYXRvMSIsICJnb2xkIikpICsKICB0aGVtZV9taW5pbWFsKCkgKwogIHRoZW1lKGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KGFuZ2xlID0gOTApKSArCiAgbGFicyh0aXRsZSA9ICJMQy1NUyAoLSkgRmVhdHVyZSBBYnVuZGFuY2VzIGJ5IFNhbXBsZSIsCiAgICAgICBzdWJ0aXRsZSA9ICJVbnNjYWxlZCBkYXRhIiwKICAgICAgIHkgPSAiUmVsYXRpdmUgYWJ1bmRhbmNlIikKYGBgCgpXaWxsIG5lZWQgdG8gbG9nIHRyYW5zZm9ybSBpbiBvcmRlciB0byBub3JtYWxpemUgYW5kIGFjdHVhbGx5IHNlZSB0aGUgZGF0YQoKIyBMb2cyIHRyYW5zZm9ybQpgYGB7cn0KaW1wX21ldGFiaW5kX2NsdXN0X3RpZHlfbG9nMiA8LSBpbXBfbWV0YWJpbmRfY2x1c3RfdGlkeSAlPiUKICBtdXRhdGUocmVsX2FidW5kX2xvZzIgPSBsb2cyKHJlbF9hYnVuZCkpCmBgYAoKIyMgQm94cGxvdApgYGB7cn0KKGJwX2RhdGFfcXVhbGl0eSA8LSBpbXBfbWV0YWJpbmRfY2x1c3RfdGlkeV9sb2cyICU+JQogIGdncGxvdChhZXMoeCA9IHNhbXBsZV9JRCwgeSA9IHJlbF9hYnVuZF9sb2cyLCBmaWxsID0gSW50ZXJ2ZW50aW9uKSkgKwogIGdlb21fYm94cGxvdChhbHBoYSA9IDAuNikgKwogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IGMoImxpZ2h0IGdyZXkiLCAidG9tYXRvMSIsICJnb2xkIikpICsKICB0aGVtZV9taW5pbWFsKCkgKwogIHRoZW1lKGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KGFuZ2xlID0gOTApKSArCiAgbGFicyh0aXRsZSA9ICJMQy1NUyAoLSkgRmVhdHVyZSBBYnVuZGFuY2VzIGJ5IFNhbXBsZSIsCiAgICAgICBzdWJ0aXRsZSA9ICJMb2cyIHRyYW5zZm9ybWVkIGRhdGEiLAogICAgICAgeSA9ICJSZWxhdGl2ZSBhYnVuZGFuY2UiKSkKYGBgCgpNdWNoIGJldHRlciEgUUNzIGxvb2sgZ29vZC4KCiMgUENBcwoKIyMgV2l0aCBRQ1MKCiMjIyBXcmFuZ2xlCgpgYGB7cn0KIyBnbyBiYWNrIHRvIHdpZGUgZGF0YQppbXBfbWV0YWJpbmRfY2x1c3RfbG9nMiA8LSBpbXBfbWV0YWJpbmRfY2x1c3RfdGlkeV9sb2cyICU+JQogIGRwbHlyOjpzZWxlY3QoIXJlbF9hYnVuZCkgJT4lCiAgcGl2b3Rfd2lkZXIobmFtZXNfZnJvbSA9IG16X3J0LAogICAgICAgICAgICAgIHZhbHVlc19mcm9tID0gcmVsX2FidW5kX2xvZzIpCgpQQ0EuaW1wX21ldGFiaW5kX2NsdXN0X2xvZzIgPC0gUENBKGltcF9tZXRhYmluZF9jbHVzdF9sb2cyLCAgIyB3aWRlIGRhdGEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWFsaS5zdXAgPSAxOjExLCAjIHJlbW92ZSBxdWFsaXRhdGl2ZSB2YXJpYWJsZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncmFwaCA9IEZBTFNFLCAjIGRvbid0IGdyYXBoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGUudW5pdCA9IEZBTFNFKSAjIGRvbid0IHNjYWxlLCBhbHJlYWR5IHRyYW5zZm9ybWVkIGRhdGEKCiMgUENBIHN1bW1hcnkKa2FibGUoc3VtbWFyeShQQ0EuaW1wX21ldGFiaW5kX2NsdXN0X2xvZzIpKQpgYGAKCmBgYHtyfQojIHB1bGwgUEMgY29vcmRpbmF0ZXMgaW50byBkZgpQQ19jb29yZF9RQ19sb2cyIDwtIGFzLmRhdGEuZnJhbWUoUENBLmltcF9tZXRhYmluZF9jbHVzdF9sb2cyJGluZCRjb29yZCkKCiMgYmluZCBiYWNrIG1ldGFkYXRhIGZyb20gY29scyAxLTEwClBDX2Nvb3JkX1FDX2xvZzIgPC0gYmluZF9jb2xzKGltcF9tZXRhYmluZF9jbHVzdF9sb2cyWywxOjExXSwgUENfY29vcmRfUUNfbG9nMikKCiMgZ3JhYiBzb21lIHZhcmlhbmNlIGV4cGxhaW5lZAppbXBvcnRhbmNlX1FDIDwtIFBDQS5pbXBfbWV0YWJpbmRfY2x1c3RfbG9nMiRlaWcKCiMgc2V0IHZhcmlhbmNlIGV4cGxhaW5lZCB3aXRoIFBDMSwgcm91bmQgdG8gMiBkaWdpdHMKUEMxX3dpdGhRQyA8LSByb3VuZChpbXBvcnRhbmNlX1FDWzEsMl0sIDIpCgojIHNldCB2YXJpYW5jZSBleHBsYWluZWQgd2l0aCBQQzIsIHJvdW5kIHRvIDIgZGlnaXRzClBDMl93aXRoUUMgPC0gcm91bmQoaW1wb3J0YW5jZV9RQ1syLDJdLCAyKQpgYGAKCiMjIyBQbG90cwpVc2luZyBGYWN0b0V4dHJhIHBhY2thZ2UKYGBge3J9CiMgc2NyZWUgcGxvdApmdml6X2VpZyhQQ0EuaW1wX21ldGFiaW5kX2NsdXN0X2xvZzIpCgojIGdldCBlaWdlbnZhbHVlcwprYWJsZShnZXRfZWlnKFBDQS5pbXBfbWV0YWJpbmRfY2x1c3RfbG9nMikpCmBgYAoKYGBge3J9CiMgc2NvcmVzIHBsb3QKZnZpel9wY2FfaW5kKFBDQS5pbXBfbWV0YWJpbmRfY2x1c3RfbG9nMikKYGBgCgoKIyMjIE1hbnVhbCBzY29yZXMgcGxvdAoKYGBge3J9CiMgbWFudWFsIHNjb3JlcyBwbG90CihQQ0Ffd2l0aFFDcyA8LSBQQ19jb29yZF9RQ19sb2cyICU+JQogIGdncGxvdChhZXMoeCA9IERpbS4xLCB5ID0gRGltLjIsCiAgICAgICAgICAgICBmaWxsID0gZmFjdG9yKEludGVydmVudGlvbiwgbGV2ZWxzID0gYygiWWVsbG93IiwgIlJlZCIsICJRQyIpKSkpICsKICBnZW9tX3BvaW50KHNoYXBlID0gMjEsIGFscGhhID0gMC44KSArCiAgc2NhbGVfZmlsbF9tYW51YWwodmFsdWVzID0gYygiZ29sZCIsICJ0b21hdG8xIiwgImxpZ2h0IGdyZXkiKSkgKwogIHNjYWxlX2NvbG9yX21hbnVhbCh2YWx1ZXMgPSAiYmxhY2siKSArICAKICB0aGVtZV9taW5pbWFsKCkgKwogIGNvb3JkX2ZpeGVkKFBDMl93aXRoUUMvUEMxX3dpdGhRQykgKwogIGxhYnMoeCA9IGdsdWU6OmdsdWUoIlBDMToge1BDMV93aXRoUUN9JSIpLAogICAgICAgeSA9IGdsdWU6OmdsdWUoIlBDMjoge1BDMl93aXRoUUN9JSIpLAogICAgICAgZmlsbCA9ICJHcm91cCIsCiAgICAgICB0aXRsZSA9ICJQcmluY2lwYWwgQ29tcG9uZW50cyBBbmFseXNpcyBTY29yZXMgUGxvdCIsCiAgICAgICBzdWJ0aXRsZSA9ICJMb2cyIHRyYW5zZm9ybWVkIGRhdGEiKSkKYGBgCgpUaGVyZSBzZWVtcyB0byBiZSBvdXRsaWVycyBoZXJlLiBXZSdsbCBrZWVwIGludmVzdGlnYXRpbmcuIExldCdzIHNlZSBob3cgdGhlIGRhdGEgbG9va3Mgd2l0aG91dCB0aGUgUUNzLgoKIyMgV2l0aG91dCBRQ3MKCiMjIyBXcmFuZ2xlIAoKYGBge3J9CmltcF9tZXRhYmluZF9jbHVzdF9sb2cyX25vUUNzIDwtIGltcF9tZXRhYmluZF9jbHVzdF9sb2cyICU+JQogIGZpbHRlcihJbnRlcnZlbnRpb24gIT0gIlFDIikKClBDQS5pbXBfbWV0YWJpbmRfY2x1c3RfbG9nMl9ub1FDcyA8LSBQQ0EoaW1wX21ldGFiaW5kX2NsdXN0X2xvZzJfbm9RQ3MsICMgd2lkZSBkYXRhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWFsaS5zdXA9MToxMSwgIyByZW1vdmUgcXVhbGl0YXRpdmUgdmFyaWFibGVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncmFwaD1GQUxTRSwgIyBkb24ndCBncmFwaAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGUudW5pdD1GQUxTRSkgIyBkb24ndCBzY2FsZSwgd2UgYWxyZWFkeSBkaWQgdGhpcwoKIyBsb29rIGF0IHN1bW1hcnkKa2FibGUoc3VtbWFyeShQQ0EuaW1wX21ldGFiaW5kX2NsdXN0X2xvZzJfbm9RQ3MpKQpgYGAKCmBgYHtyfQojIHB1bGwgUEMgY29vcmRpbmF0ZXMgaW50byBkZgpQQ19jb29yZF9ub1FDc19sb2cyIDwtIGFzLmRhdGEuZnJhbWUoUENBLmltcF9tZXRhYmluZF9jbHVzdF9sb2cyX25vUUNzJGluZCRjb29yZCkKCiMgYmluZCBiYWNrIG1ldGFkYXRhIGZyb20gY29scyAxLTEwClBDX2Nvb3JkX25vUUNzX2xvZzIgPC0gYmluZF9jb2xzKGltcF9tZXRhYmluZF9jbHVzdF9sb2cyX25vUUNzWywxOjExXSwgUENfY29vcmRfbm9RQ3NfbG9nMikKCiMgZ3JhYiBzb21lIHZhcmlhbmNlIGV4cGxhaW5lZAppbXBvcnRhbmNlX25vUUMgPC0gUENBLmltcF9tZXRhYmluZF9jbHVzdF9sb2cyX25vUUNzJGVpZwoKIyBzZXQgdmFyaWFuY2UgZXhwbGFpbmVkIHdpdGggUEMxLCByb3VuZCB0byAyIGRpZ2l0cwpQQzFfbm9RQyA8LSByb3VuZChpbXBvcnRhbmNlX25vUUNbMSwyXSwgMikKCiMgc2V0IHZhcmlhbmNlIGV4cGxhaW5lZCB3aXRoIFBDMiwgcm91bmQgdG8gMiBkaWdpdHMKUEMyX25vUUMgPC0gcm91bmQoaW1wb3J0YW5jZV9ub1FDWzIsMl0sIDIpCmBgYAoKIyMjIFBsb3RzClVzaW5nIEZhY3RvRXh0cmEKCmBgYHtyfQojIHNjcmVlIHBsb3QKZnZpel9laWcoUENBLmltcF9tZXRhYmluZF9jbHVzdF9sb2cyX25vUUNzKQpgYGAKCmBgYHtyfQojIHNjb3JlcyBwbG90CmZ2aXpfcGNhX2luZChQQ0EuaW1wX21ldGFiaW5kX2NsdXN0X2xvZzJfbm9RQ3MpCmBgYAoKCiMjIyBNYW51YWwgc2NvcmVzIHBsb3QKCmBgYHtyfQooUENBX3dpdGhvdXRRQ3MgPC0gUENfY29vcmRfbm9RQ3NfbG9nMiAlPiUKICBnZ3Bsb3QoYWVzKHggPSBEaW0uMSwgCiAgICAgICAgICAgICB5ID0gRGltLjIsCiAgICAgICAgICAgICBmaWxsID0gSW50ZXJ2ZW50aW9uLAogICAgICAgICAgICAgdGV4dCA9IHNhbXBsZV9JRCkpICsKICAgIGdlb21fcG9pbnQoc2hhcGUgPSAyMSwgYWxwaGEgPSAwLjgpICsKICAgIGdlb21faGxpbmUoeWludGVyY2VwdCA9IDAsIGxpbmV0eXBlID0gImRhc2hlZCIsIGFscGhhPTAuNSkgKwogICAgZ2VvbV92bGluZSh4aW50ZXJjZXB0ID0gMCwgbGluZXR5cGUgPSAiZGFzaGVkIiwgYWxwaGE9MC41KSArCiAgICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXMgPSBjKCJnb2xkIiwgInRvbWF0bzEiKSkgKwogICAgc2NhbGVfY29sb3JfbWFudWFsKHZhbHVlcyA9ICJibGFjayIpICsgIAogICAgdGhlbWVfbWluaW1hbCgpICsKICAgIGNvb3JkX2ZpeGVkKFBDMl9ub1FDL1BDMV9ub1FDKSArCiAgICBsYWJzKHggPSBnbHVlOjpnbHVlKCJQQzE6IHtQQzFfbm9RQ30lIiksCiAgICAgICAgIHkgPSBnbHVlOjpnbHVlKCJQQzI6IHtQQzJfbm9RQ30lIiksCiAgICAgICAgIGZpbGwgPSAiSW50ZXJ2ZW50aW9uIiwKICAgICAgICAgdGl0bGUgPSAiUHJpbmNpcGFsIENvbXBvbmVudHMgQW5hbHlzaXMgU2NvcmVzIFBsb3QiLAogICAgICAgICBzdWJ0aXRsZSA9ICJMb2cyIHRyYW5zZm9ybWVkIGRhdGEsIHdpdGhvdXQgUUNzIikpCmdncGxvdGx5KFBDQV93aXRob3V0UUNzLCB0b29sdGlwID0gInRleHQiKQpgYGAKCkludGVyYWN0aXZlIHBsb3Qgc2hvd3MgdXMgdGhhdCBhbGwgb2YgdGhvc2UgdmlzdWFsIG91dGxpZXJzIGFyZSBzdWJqZWN0IDYxMDYuIExldCdzIHNlZSB3aGF0IHRoZSBkYXRhIGxvb2tzIGxpa2Ugd2hlbiB3ZSByZW1vdmUgdGhpcyBvdXRsaWVyLgoKIyMgUmVtb3ZhbCBvZiBvdXRsaWVyCgojIyMgV2l0aCBRQ3MKCiMjIyMgV3JhbmdsZQoKYGBge3J9CiMgZ28gYmFjayB0byB3aWRlIGRhdGEKaW1wX25vNjEwNl9sb2cyIDwtIGltcF9tZXRhYmluZF9jbHVzdF90aWR5X2xvZzIgJT4lCiAgZHBseXI6OnNlbGVjdCghcmVsX2FidW5kKSAlPiUKICBmaWx0ZXIoU3ViamVjdCAhPSA2MTA2KSAlPiUKICBwaXZvdF93aWRlcihuYW1lc19mcm9tID0gbXpfcnQsCiAgICAgICAgICAgICAgdmFsdWVzX2Zyb20gPSByZWxfYWJ1bmRfbG9nMikKClBDQS5pbXBfbm82MTA2X2xvZzIgPC0gUENBKGltcF9ubzYxMDZfbG9nMiwgICMgd2lkZSBkYXRhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVhbGkuc3VwID0gMToxMSwgIyByZW1vdmUgcXVhbGl0YXRpdmUgdmFyaWFibGVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JhcGggPSBGQUxTRSwgIyBkb24ndCBncmFwaAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlLnVuaXQgPSBGQUxTRSkgIyBkb24ndCBzY2FsZSwgYWxyZWFkeSB0cmFuc2Zvcm1lZCBkYXRhCgojIFBDQSBzdW1tYXJ5CmthYmxlKHN1bW1hcnkoUENBLmltcF9ubzYxMDZfbG9nMikpCmBgYAoKYGBge3J9CiMgcHVsbCBQQyBjb29yZGluYXRlcyBpbnRvIGRmClBDX25vNjEwNl9RQ19sb2cyIDwtIGFzLmRhdGEuZnJhbWUoUENBLmltcF9ubzYxMDZfbG9nMiRpbmQkY29vcmQpCgojIGJpbmQgYmFjayBtZXRhZGF0YSBmcm9tIGNvbHMgMS0xMQpQQ19ubzYxMDZfUUNfbG9nMiA8LSBiaW5kX2NvbHMoaW1wX25vNjEwNl9sb2cyWywxOjExXSwgUENfbm82MTA2X1FDX2xvZzIpCgojIGdyYWIgc29tZSB2YXJpYW5jZSBleHBsYWluZWQKaW1wb3J0YW5jZV9ubzYxMDZfUUMgPC0gUENBLmltcF9ubzYxMDZfbG9nMiRlaWcKCiMgc2V0IHZhcmlhbmNlIGV4cGxhaW5lZCB3aXRoIFBDMSwgcm91bmQgdG8gMiBkaWdpdHMKUEMxX25vNjEwNl93aXRoUUMgPC0gcm91bmQoaW1wb3J0YW5jZV9ubzYxMDZfUUNbMSwyXSwgMikKCiMgc2V0IHZhcmlhbmNlIGV4cGxhaW5lZCB3aXRoIFBDMiwgcm91bmQgdG8gMiBkaWdpdHMKUEMyX25vNjEwNl93aXRoUUMgPC0gcm91bmQoaW1wb3J0YW5jZV9ubzYxMDZfUUNbMiwyXSwgMikKYGBgCgojIyMjIFBsb3RzClVzaW5nIEZhY3RvRXh0cmEgcGFja2FnZQpgYGB7cn0KIyBzY3JlZSBwbG90CmZ2aXpfZWlnKFBDQS5pbXBfbm82MTA2X2xvZzIpCmBgYAoKYGBge3J9CiMgc2NvcmVzIHBsb3QKZnZpel9wY2FfaW5kKFBDQS5pbXBfbm82MTA2X2xvZzIpCmBgYAoKCiMjIyMgTWFudWFsIHNjb3JlcyBwbG90CgpgYGB7cn0KIyBtYW51YWwgc2NvcmVzIHBsb3QKKFBDQV9ubzYxMDZfd2l0aFFDcyA8LSBQQ19ubzYxMDZfUUNfbG9nMiAlPiUKICBnZ3Bsb3QoYWVzKHggPSBEaW0uMSwgeSA9IERpbS4yLAogICAgICAgICAgICAgZmlsbCA9IGZhY3RvcihJbnRlcnZlbnRpb24sIGxldmVscyA9IGMoIlllbGxvdyIsICJSZWQiLCAiUUMiKSkpKSArCiAgZ2VvbV9wb2ludChzaGFwZSA9IDIxLCBhbHBoYSA9IDAuOCkgKwogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IGMoImdvbGQiLCAidG9tYXRvMSIsICJsaWdodCBncmV5IikpICsKICBzY2FsZV9jb2xvcl9tYW51YWwodmFsdWVzID0gImJsYWNrIikgKyAgCiAgdGhlbWVfbWluaW1hbCgpICsKICBjb29yZF9maXhlZChQQzJfbm82MTA2X3dpdGhRQy9QQzFfbm82MTA2X3dpdGhRQykgKwogIGxhYnMoeCA9IGdsdWU6OmdsdWUoIlBDMToge1BDMV9ubzYxMDZfd2l0aFFDfSUiKSwKICAgICAgIHkgPSBnbHVlOjpnbHVlKCJQQzI6IHtQQzJfbm82MTA2X3dpdGhRQ30lIiksCiAgICAgICBmaWxsID0gIkdyb3VwIiwKICAgICAgIHRpdGxlID0gIlByaW5jaXBhbCBDb21wb25lbnRzIEFuYWx5c2lzIFNjb3JlcyBQbG90IikpCmBgYAoKCkJlY2F1c2Ugb2Ygc3ViamVjdCA2MTA2LCB0aGUgcG9vbGVkIFFDIHNhbXBsZSBwb2ludHMgYXJlIHF1aXRlIGZhciBmcm9tIHNhbXBsZXMuIAoKIyMjIFdpdGhvdXQgUUNzCgojIyMjIFdyYW5nbGUKYGBge3J9CmltcF9ubzYxMDZfbG9nMl9ub1FDcyA8LSBpbXBfbWV0YWJpbmRfY2x1c3RfbG9nMiAlPiUKICBmaWx0ZXIoSW50ZXJ2ZW50aW9uICE9ICJRQyIpICU+JQogIGZpbHRlcihTdWJqZWN0ICE9ICI2MTA2IikKClBDQS5pbXBfbm82MTA2X2xvZzJfbm9RQ3MgPC0gUENBKGltcF9ubzYxMDZfbG9nMl9ub1FDcywgIyB3aWRlIGRhdGEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1YWxpLnN1cD0xOjExLCAjIHJlbW92ZSBxdWFsaXRhdGl2ZSB2YXJpYWJsZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyYXBoPUZBTFNFLCAjIGRvbid0IGdyYXBoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZS51bml0PUZBTFNFKSAjIGRvbid0IHNjYWxlLCB3ZSBhbHJlYWR5IGRpZCB0aGlzCgojIGxvb2sgYXQgc3VtbWFyeQprYWJsZShzdW1tYXJ5KFBDQS5pbXBfbm82MTA2X2xvZzJfbm9RQ3MpKQpgYGAKCmBgYHtyfQojIHB1bGwgUEMgY29vcmRpbmF0ZXMgaW50byBkZgpQQ19jb29yZF9ubzYxMDZfbm9RQ19sb2cyIDwtIGFzLmRhdGEuZnJhbWUoUENBLmltcF9ubzYxMDZfbG9nMl9ub1FDcyRpbmQkY29vcmQpCgojIGJpbmQgYmFjayBtZXRhZGF0YSBmcm9tIGNvbHMgMS0xMQpQQ19jb29yZF9ubzYxMDZfbm9RQ19sb2cyIDwtIGJpbmRfY29scyhpbXBfbm82MTA2X2xvZzJfbm9RQ3NbLDE6MTFdLCBQQ19jb29yZF9ubzYxMDZfbm9RQ19sb2cyKQoKIyBncmFiIHNvbWUgdmFyaWFuY2UgZXhwbGFpbmVkCmltcG9ydGFuY2Vfbm82MTA2X25vUUMgPC0gUENBLmltcF9ubzYxMDZfbG9nMl9ub1FDcyRlaWcKCiMgc2V0IHZhcmlhbmNlIGV4cGxhaW5lZCB3aXRoIFBDMSwgcm91bmQgdG8gMiBkaWdpdHMKUEMxX25vNjEwNl9ub1FDIDwtIHJvdW5kKGltcG9ydGFuY2Vfbm82MTA2X25vUUNbMSwyXSwgMikKCiMgc2V0IHZhcmlhbmNlIGV4cGxhaW5lZCB3aXRoIFBDMiwgcm91bmQgdG8gMiBkaWdpdHMKUEMyX25vNjEwNl9ub1FDIDwtIHJvdW5kKGltcG9ydGFuY2Vfbm82MTA2X25vUUNbMiwyXSwgMikKYGBgCgoKIyMjIyBQbG90cwpVc2luZyBGYWN0b0V4dHJhCmBgYHtyfQojIHNjcmVlIHBsb3QKZnZpel9laWcoUENBLmltcF9ubzYxMDZfbG9nMl9ub1FDcykKYGBgCgpgYGB7cn0KIyBzY29yZXMgcGxvdApmdml6X3BjYV9pbmQoUENBLmltcF9ubzYxMDZfbG9nMl9ub1FDcykKYGBgCgoKIyMjIyBNYW51YWwgc2NvcmVzIHBsb3QKCmBgYHtyfQooUENBX25vNjEwNl93aXRob3V0UUNzIDwtIFBDX2Nvb3JkX25vNjEwNl9ub1FDX2xvZzIgJT4lCiAgZ2dwbG90KGFlcyh4ID0gRGltLjEsIAogICAgICAgICAgICAgeSA9IERpbS4yLAogICAgICAgICAgICAgZmlsbCA9IEludGVydmVudGlvbikpICsKICAgIGdlb21fcG9pbnQoc2hhcGUgPSAyMSwgYWxwaGEgPSAwLjgpICsKICAgIGdlb21faGxpbmUoeWludGVyY2VwdCA9IDAsIGxpbmV0eXBlID0gImRhc2hlZCIsIGFscGhhPTAuNSkgKwogICAgZ2VvbV92bGluZSh4aW50ZXJjZXB0ID0gMCwgbGluZXR5cGUgPSAiZGFzaGVkIiwgYWxwaGE9MC41KSArCiAgICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXMgPSBjKCJ0b21hdG8xIiwgImdvbGQiKSkgKwogICAgc2NhbGVfY29sb3JfbWFudWFsKHZhbHVlcyA9ICJibGFjayIpICsgIAogICAgdGhlbWVfbWluaW1hbCgpICsKICAgIGNvb3JkX2ZpeGVkKFBDMl9ubzYxMDZfbm9RQy9QQzFfbm82MTA2X25vUUMpICsKICAgIGxhYnMoeCA9IGdsdWU6OmdsdWUoIlBDMToge1BDMV9ubzYxMDZfbm9RQ30lIiksCiAgICAgICAgIHkgPSBnbHVlOjpnbHVlKCJQQzI6IHtQQzJfbm82MTA2X25vUUN9JSIpLAogICAgICAgICBmaWxsID0gIkludGVydmVudGlvbiIsCiAgICAgICAgIHRpdGxlID0gIlByaW5jaXBhbCBDb21wb25lbnRzIEFuYWx5c2lzIFNjb3JlcyBQbG90IikpCmdncGxvdGx5KFBDQV9ubzYxMDZfd2l0aG91dFFDcykKYGBgCgpOb3cgd2UncmUgc2VlaW5nIHNvbWUgc2VwYXJhdGlvbiBhbG9uZyBQQzIhIExldCdzIGV4cGxvcmUgdGhpcyBtb3JlIHdpdGggYSBwdWItZnJpZW5kbHkgcGFja2FnZSBmb3IgUENBcywgdGhlIFBDQXRvb2xzIHBhY2thZ2UuCgoKIyBQQ0F0b29scwoKIyMgVy8gT3V0bGllcgoKIyMjIERhdGEgd3JhbmdsaW5nCmBgYHtyfQojIGNyZWF0ZSByZWwgYWJ1bmQgZGYgc3VpdGFibGUgZm9yIFBDQXRvb2xzIHBhY2thZ2UKaW1wX2NsdXN0X29taWNzZGF0YV9vdXRsaWVyc19mb3JQQ0F0b29scyA8LSBhcy5kYXRhLmZyYW1lKHQoaW1wX2NsdXN0KSkgIyB0cmFuc3Bvc2UgZGYgCgpuYW1lcyhpbXBfY2x1c3Rfb21pY3NkYXRhX291dGxpZXJzX2ZvclBDQXRvb2xzKSA8LSBpbXBfY2x1c3Rfb21pY3NkYXRhX291dGxpZXJzX2ZvclBDQXRvb2xzWzEsXSAjIG1ha2Ugc2FtcGxlIElEcyBjb2x1bW4gbmFtZXMKCmltcF9jbHVzdF9vbWljc2RhdGFfb3V0bGllcnNfZm9yUENBdG9vbHMgPC0gaW1wX2NsdXN0X29taWNzZGF0YV9vdXRsaWVyc19mb3JQQ0F0b29sc1stMSxdICMgcmVtb3ZlIHNhbXBsZSBJRCByb3cKCiMgY3JlYXRlIG1ldGFkYXRhIGRmIHN1aXRhYmxlIGZvciBQQ0F0b29scyBwY2tnCgptZXRhZGF0YV9vdXRsaWVyc19mb3JQQ0F0b29scyA8LSBtZXRhZGF0YSAlPiUKICBjb2x1bW5fdG9fcm93bmFtZXModmFyID0gInNhbXBsZV9JRCIpICMgY2hhbmdlIHNhbXBsZSBJRCBjb2x1bW4gdG8gcm93bmFtZXMKCiMgY3JlYXRlIGEgdmVjdG9yIHNvIHRoYXQgY29sIG5hbWVzIGluIGFidW5kYW5jZSBkZiBtYXRjaGVzIG1ldGFkYXRhIGRmCm9yZGVyX291dGxpZXJzX2ZvclBDQXRvb2xzIDwtIG1hdGNoKHJvd25hbWVzKG1ldGFkYXRhX291dGxpZXJzX2ZvclBDQXRvb2xzKSwgY29sbmFtZXMoaW1wX2NsdXN0X29taWNzZGF0YV9vdXRsaWVyc19mb3JQQ0F0b29scykpCgojIHJlb3JkZXIgY29sIG5hbWVzIGluIGFidW5kYW5jZSBkZiBzbyB0aGF0IGl0IG1hdGNoZXMgbWV0YWRhdGEKYWJ1bmRhdGFfb3V0bGllcnNfcmVvcmRlcmVkX2ZvclBDQXRvb2xzIDwtIGltcF9jbHVzdF9vbWljc2RhdGFfb3V0bGllcnNfZm9yUENBdG9vbHNbICxvcmRlcl9vdXRsaWVyc19mb3JQQ0F0b29sc10gCgojIGNoYW5nZSBhYnVuZGFuY2UgZGYgdG8gbnVtZXJpYwphYnVuZGF0YV9vdXRsaWVyc19yZW9yZGVyZWRfZm9yUENBdG9vbHMgPC0gYWJ1bmRhdGFfb3V0bGllcnNfcmVvcmRlcmVkX2ZvclBDQXRvb2xzICU+JQogIG11dGF0ZV9hbGwoYXMubnVtZXJpYykKCiMgTG9nIHRyYW5zZm9ybQpsb2cyX2FidW5kYXRhX291dGxpZXJzX2ZvclBDQXRvb2xzIDwtIGxvZzIoYWJ1bmRhdGFfb3V0bGllcnNfcmVvcmRlcmVkX2ZvclBDQXRvb2xzKQoKCiMgdW5pdGUgcHJlX3Bvc3QgY29sdW1uIHdpdGggaW50ZXJ2ZW50aW9uIGNvbHVtbiB0byBjcmVhdGUgcHJlX2ludGVydmVudGlvbiBjb2x1bW4KbWV0YWRhdGFfb3V0bGllcnNfZm9yUENBdG9vbHMgPC0gbWV0YWRhdGFfb3V0bGllcnNfZm9yUENBdG9vbHMgJT4lCiAgdW5pdGUoY29sID0gInByZV9wb3N0X2ludGVydmVudGlvbiIsCiAgICAgICAgYygicHJlX3Bvc3QiLCJJbnRlcnZlbnRpb24iKSwKICAgICAgICBzZXAgPSAiXyIsCiAgICAgICAgcmVtb3ZlID0gRkFMU0UpCmBgYAoKCiMjIyBQQ0EKCmBgYHtyLCBmaWcud2lkdGg9MTAsIGZpZy5oZWlnaHQ9Ni41LCBmaWcuYXNwPTAuNX0KIyBwY2EKcF9vdXRsaWVycyA8LSBQQ0F0b29sczo6cGNhKGxvZzJfYWJ1bmRhdGFfb3V0bGllcnNfZm9yUENBdG9vbHMsIAogICAgICAgICBtZXRhZGF0YSA9IG1ldGFkYXRhX291dGxpZXJzX2ZvclBDQXRvb2xzLCAKICAgICAgICAgc2NhbGUgPSBGQUxTRSAjIHVzaW5nIHNjYWxlZCBkYXRhIGFscmVhZHkgKGxvZzIgdHJhbnNmb3JtZWQpCiAgICAgICAgIAopCgooUENBdG9vbHNfb3V0bGllcnMgPC0gYmlwbG90KHBfb3V0bGllcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWIgPSBwYXN0ZTAobWV0YWRhdGFfb3V0bGllcnNfZm9yUENBdG9vbHMkU3ViamVjdCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbGJ5ID0gJ3ByZV9wb3N0X2ludGVydmVudGlvbicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbGtleSA9IGMoInByZV9ZZWxsb3ciID0gInllbGxvdyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBvc3RfWWVsbG93IiA9ICJ5ZWxsb3c0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicHJlX1JlZCIgPSAicmVkIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicG9zdF9SZWQiID0gInJlZDQiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgaGxpbmUgPSAwLCB2bGluZSA9IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZ2VuZFBvc2l0aW9uID0gJ3JpZ2h0JywKICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGUgPSAiUENBIFNjb3JlcyBQbG90IHdpdGggTG9hZGluZ3MiLAogICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJ0aXRsZSA9ICJMb2cyIHRyYW5zZm9ybWVkIGRhdGEsIEMxOCAoLSksIHdpdGhvdXQgUUNzIGJ1dCB3aXRoIG91dGxpZXJzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxsaXBzZSA9IFRSVUUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsbGlwc2VUeXBlID0gJ3QnLCAjIGFzc3VtZXMgbXVsdGl2YXJpYXRlCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsbGlwc2VMZXZlbCA9IDAuOTUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsbGlwc2VGaWxsID0gVFJVRSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxsaXBzZUFscGhhID0gMC4yLAogICAgICAgICAgICAgICAgICAgICAgICAgICBlbGxpcHNlTGluZVNpemUgPSAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93TG9hZGluZ3MgPSBUUlVFKSkKCmBgYAoKCldlIHNlZSBoZXJlIHRoZSB0b3AgNSBtZXRhYm9saXRlcyBkcml2aW5nIHNlcGFyYXRpb24gYWxvbmcgUEMxLCB3aGljaCBpcyByZWFsbHkgc2VwYXJhdGlvbiBiZXR3ZWVuIHN1YmplY3QgNjEwNiBhbmQgdGhlIHJlc3Qgb2YgdGhlIHNhbXBsZXMuIFRoZXNlIG1ldGFib2xpdGVzIGFyZSB3b3J0aCBtZSBleHBsb3JpbmcgYSBiaXQgbW9yZSBhcyB0byB3aHkgc3ViamVjdCA2MTA2IGlzIGFuIG91dGxpZXIuIExldCdzIG1vdmUgb24gYW5kIGV4cGxvcmUgdGhlIGRhdGEgd2l0aG91dCBvdXRsaWVycyBtb3JlLiBDb25maWRlbmNlIGVsbGlwc2VzIHdlcmUgYWRkZWQgdG8gc2hvdyB0aGF0IDYxMDYgc2FtcGxlcyBhcmUgc3RhdGlzdGljYWwgb3V0bGllcnMuCgojIyBObyBvdXRsaWVycwoKIyMjIERhdGEgd3JhbmdsaW5nCmBgYHtyfQojIGNyZWF0ZSByZWwgYWJ1bmQgZGYgc3VpdGFibGUgZm9yIFBDQXRvb2xzIHBhY2thZ2UKCmltcF9jbHVzdF9vbWljc2RhdGFfZm9yUENBdG9vbHMgPC0gYXMuZGF0YS5mcmFtZSh0KGltcF9jbHVzdCkpICMgdHJhbnNwb3NlIGRmIAoKbmFtZXMoaW1wX2NsdXN0X29taWNzZGF0YV9mb3JQQ0F0b29scykgPC0gaW1wX2NsdXN0X29taWNzZGF0YV9mb3JQQ0F0b29sc1sxLF0gIyBtYWtlIHNhbXBsZSBJRHMgY29sdW1uIG5hbWVzCgppbXBfY2x1c3Rfb21pY3NkYXRhX2ZvclBDQXRvb2xzIDwtIGltcF9jbHVzdF9vbWljc2RhdGFfZm9yUENBdG9vbHNbLTEsXSAjIHJlbW92ZSBzYW1wbGUgSUQgcm93CgppbXBfY2x1c3Rfb21pY3NkYXRhX2ZvclBDQXRvb2xzIDwtIGltcF9jbHVzdF9vbWljc2RhdGFfZm9yUENBdG9vbHMgJT4lCiAgZHBseXI6OnNlbGVjdCghY29udGFpbnMoIlFDIikpICMgcmVtb3ZlIFFDIG9ic2VydmF0aW9ucwoKCiMgY3JlYXRlIG1ldGFkYXRhIGRmIHN1aXRhYmxlIGZvciBQQ0F0b29scyBwY2tnCgptZXRhZGF0YV9mb3JQQ0F0b29scyA8LSBtZXRhZGF0YSAlPiUKICBjb2x1bW5fdG9fcm93bmFtZXModmFyID0gInNhbXBsZV9JRCIpICMgY2hhbmdlIHNhbXBsZSBJRCBjb2x1bW4gdG8gcm93bmFtZXMKCiMgY3JlYXRlIGEgdmVjdG9yIHNvIHRoYXQgY29sIG5hbWVzIGluIGFidW5kYW5jZSBkZiBtYXRjaGVzIG1ldGFkYXRhIGRmCm9yZGVyX2ZvclBDQXRvb2xzIDwtIG1hdGNoKHJvd25hbWVzKG1ldGFkYXRhX2ZvclBDQXRvb2xzKSwgY29sbmFtZXMoaW1wX2NsdXN0X29taWNzZGF0YV9mb3JQQ0F0b29scykpCgojIHJlb3JkZXIgY29sIG5hbWVzIGluIGFidW5kYW5jZSBkZiBzbyB0aGF0IGl0IG1hdGNoZXMgbWV0YWRhdGEKYWJ1bmRhdGFfcmVvcmRlcmVkX2ZvclBDQXRvb2xzIDwtIGltcF9jbHVzdF9vbWljc2RhdGFfZm9yUENBdG9vbHNbICxvcmRlcl9mb3JQQ0F0b29sc10gCgojIGNoYW5nZSBhYnVuZGFuY2UgZGYgdG8gbnVtZXJpYwphYnVuZGF0YV9yZW9yZGVyZWRfZm9yUENBdG9vbHMgPC0gYWJ1bmRhdGFfcmVvcmRlcmVkX2ZvclBDQXRvb2xzICU+JQogIG11dGF0ZV9hbGwoYXMubnVtZXJpYykKCiMgTG9nIHRyYW5zZm9ybQpsb2cyX2FidW5kYXRhX2ZvclBDQXRvb2xzIDwtIGxvZzIoYWJ1bmRhdGFfcmVvcmRlcmVkX2ZvclBDQXRvb2xzKQoKIyByZW1vdmUgNjEwNiBzdWJqIGZyb20gYm90aCBkZgpsb2cyX2FidW5kYXRhX2ZvclBDQXRvb2xzIDwtIGxvZzJfYWJ1bmRhdGFfZm9yUENBdG9vbHMgJT4lCiAgZHBseXI6OnNlbGVjdCghY29udGFpbnMoIjYxMDYiKSkKCm1ldGFkYXRhX2ZvclBDQXRvb2xzIDwtIG1ldGFkYXRhX2ZvclBDQXRvb2xzICU+JQogIGZpbHRlcihTdWJqZWN0ICE9IDYxMDYpCgojIHVuaXRlIHByZV9wb3N0IGNvbHVtbiB3aXRoIGludGVydmVudGlvbiBjb2x1bW4gdG8gY3JlYXRlIHByZV9pbnRlcnZlbnRpb24gY29sdW1uCm1ldGFkYXRhX2ZvclBDQXRvb2xzIDwtIG1ldGFkYXRhX2ZvclBDQXRvb2xzICU+JQogIHVuaXRlKGNvbCA9ICJwcmVfcG9zdF9pbnRlcnZlbnRpb24iLAogICAgICAgIGMoInByZV9wb3N0IiwiSW50ZXJ2ZW50aW9uIiksCiAgICAgICAgc2VwID0gIl8iLAogICAgICAgIHJlbW92ZSA9IEZBTFNFKQoKYGBgCgojIyMgU2NyZWVwbG90CgpFbGJvdyBtZXRob2QKYGBge3J9CiMgcGNhCnAgPC0gUENBdG9vbHM6OnBjYShsb2cyX2FidW5kYXRhX2ZvclBDQXRvb2xzLCAKICAgICAgICAgbWV0YWRhdGEgPSBtZXRhZGF0YV9mb3JQQ0F0b29scywgCiAgICAgICAgIHNjYWxlID0gRkFMU0UgIyB1c2luZyBzY2FsZWQgZGF0YSBhbHJlYWR5IChsb2cyIHRyYW5zZm9ybWVkKQogICAgICAgICAKKQoKZWxib3cgPC0gZmluZEVsYm93UG9pbnQocCR2YXJpYW5jZSkKCmVsYm93CmBgYAoKYGBge3IsIGZpZy53aWR0aD03LCBmaWcuaGVpZ2h0PTcuNX0KICBzY3JlZXBsb3QocCwKICAgIGNvbXBvbmVudHMgPSBnZXRDb21wb25lbnRzKHAsIDE6MjApLAogICAgdmxpbmUgPSBlbGJvdykgKwogICAgZ2VvbV9sYWJlbChhZXMoeCA9IGVsYm93ICsgMSwgeSA9IDUwLAogICAgICBsYWJlbCA9ICdFbGJvdyBtZXRob2QnLCB2anVzdCA9IC0zLCBzaXplID0gOCkpCmBgYAoKSG93IG1hbnkgUENzIGRvIHdlIG5lZWQgdG8gY2FwdHVyZSBhdCBsZWFzdCA4MCUgdmFyaWFuY2U/CmBgYHtyfQp3aGljaChjdW1zdW0ocCR2YXJpYW5jZSkgPiA4MClbMV0KYGBgCgpUaGlzIHNob3dzIHdlJ2QgbmVlZCBxdWl0ZSBhIGZldyBQQ3MgdG8gY2FwdHVyZSBtb3N0IG9mIHRoZSB2YXJpYW5jZS4gTGV0J3MgbW92ZSBvbiB3aXRoIDIgUENzIGFuZCBleHBsb3JlIG1vcmUgbGF0ZXIuCgojIyMgUENBIHBsb3RzCgojIyMjIHcvIHN0YXRzIGVsbGlwc2VzCgpgYGB7ciwgZmlnLndpZHRoPTEwLCBmaWcuaGVpZ2h0PTEwfQpQQ0F0b29sczo6YmlwbG90KHAsCiAgICAgICBsYWIgPSBwYXN0ZTAobWV0YWRhdGFfZm9yUENBdG9vbHMkU3ViamVjdCksCiAgICAgICBjb2xieSA9ICdwcmVfcG9zdF9pbnRlcnZlbnRpb24nLAogICAgICAgY29sa2V5ID0gYygicHJlX1llbGxvdyIgPSAieWVsbG93IiwKICAgICAgICAgICAgICAgICAgInBvc3RfWWVsbG93IiA9ICJ5ZWxsb3c0IiwKICAgICAgICAgICAgICAgICAgInByZV9SZWQiID0gInJlZCIsCiAgICAgICAgICAgICAgICAgICJwb3N0X1JlZCIgPSAicmVkNCIpLAogICAgICAgaGxpbmUgPSAwLCB2bGluZSA9IDAsCiAgICAgICAjIGVsbGlwc2UgY29uZmlnCiAgICAgICBlbGxpcHNlID0gVFJVRSwKICAgICAgIGVsbGlwc2VUeXBlID0gJ3QnLCAjIGFzc3VtZXMgbXVsdGl2YXJpYXRlIHQtZGlzdHJpYnV0aW9uCiAgICAgICBlbGxpcHNlTGV2ZWwgPSAwLjk1LAogICAgICAgZWxsaXBzZUZpbGwgPSBUUlVFLAogICAgICAgZWxsaXBzZUFscGhhID0gMC4yLAogICAgICAgZWxsaXBzZUxpbmVTaXplID0gMCwKICAgICAgIHhsaW0gPSBjKC04MCw4MCksIHlsaW0gPSBjKC00MCw0MCksCiAgICAgICBsZWdlbmRQb3NpdGlvbiA9ICdyaWdodCcsCiAgICAgICB0aXRsZSA9ICJQQ0EgU2NvcmVzIFBsb3QiLAogICAgICAgc3VidGl0bGUgPSAiTG9nMiB0cmFuc2Zvcm1lZCBkYXRhLCBDMTggKC0pLCBvdXRsaWVycyByZW1vdmVkLCBubyBRQ3MgXG45NSUgY29uZmlkZW5jZSBsZXZlbCBlbGxpcHNlcyIpCgpgYGAKCldpdGggY29uZmlkZW5jZSBpbnRlcnZhbHMgKEhvdGVsbGluZydzIHQpLCBtb3N0IHNhbXBsZXMgYXJlIHdpdGhpbiB0aGUgaW50ZXJ2YWxzIGV4Y2VwdCBmb3IgYSBmZXcgdGhhdCBhcmUgbm90IGZhciBvZmYuIFdlIHdpbGwgbW92ZSBmb3J3YXJkLgoKIyMjIyB3LyBsb2FkaW5ncwpMZXQncyBsb29rIGF0IHRoZSBtZXRhYm9saXRlcyBkcml2aW5nCmBgYHtyLCBmaWcud2lkdGg9OC41LCBmaWcuaGVpZ2h0PTYuNX0KKFBDQS5jb2xieS5wcmV2c3Bvc3QgPC0gYmlwbG90KHAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWIgPSBOVUxMLAogICAgICAgICAgICAgICAgICAgICAgICAgICAjIG9yIGxhYiA9IHBhc3RlMChtZXRhZGF0YV9mb3JQQ0F0b29scyRTdWJqZWN0KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sYnkgPSAncHJlX3Bvc3RfaW50ZXJ2ZW50aW9uJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sa2V5ID0gYygicHJlX1llbGxvdyIgPSAieWVsbG93IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicG9zdF9ZZWxsb3ciID0gInllbGxvdzQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwcmVfUmVkIiA9ICJyZWQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwb3N0X1JlZCIgPSAicmVkNCIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICBobGluZSA9IDAsIHZsaW5lID0gMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVnZW5kUG9zaXRpb24gPSAncmlnaHQnLAogICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZSA9ICJQQ0EgU2NvcmVzIFBsb3QiLAogICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJ0aXRsZSA9ICJMb2cyIHRyYW5zZm9ybWVkIGRhdGEsIEMxOCAoLSksIHdpdGhvdXQgUUNzIGFuZCBvdXRsaWVycyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIHlsaW0gPSBjKC00NSw0NSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dMb2FkaW5ncyA9IFRSVUUpKQoKCmBgYAoKRmVhdHVyZSAyMDEuMDIyOCBhdCBSVCA0LjU1NSBkcml2ZXMgdGhlIG1vc3Qgc2VwYXJhdGlvbiBhbG9uZyBQQzIgYWNjb3JkaW5nIHRvIHRoaXMgUENBLgoKIyMjIFBhaXJzIHBsb3RzCgpIZXJlLCB3ZSB3aWxsIGxvb2sgYXQgc2VwYXJhdGlvbnMgZm9yIHNldmVyYWwgY29tcG9uZW50cyBhdCBvbmNlIHVzaW5nIHBhaXJzIHBsb3RzLgoKIyMjIyBwb3N0LWludGVydmVudGlvbiBjb21wYXJpc29ucwpgYGB7ciwgZmlnLndpZHRoPTEwLCBmaWcuaGVpZ2h0PTEwfQooUENBX3BhaXJzcGxvdC5wcmV2c3Bvc3QgPC0KICBwYWlyc3Bsb3QocCwKICAgIGNvbXBvbmVudHMgPSBnZXRDb21wb25lbnRzKHAsIGMoMToxMCkpLAogICAgdHJpYW5nbGUgPSBUUlVFLCB0cmlhbmdsZWxhYlNpemUgPSAxMiwKICAgIGhsaW5lID0gMCwgdmxpbmUgPSAwLAogICAgcG9pbnRTaXplID0gMC40LAogICAgZ3JpZGxpbmVzLm1ham9yID0gRkFMU0UsIGdyaWRsaW5lcy5taW5vciA9IEZBTFNFLAogICAgY29sYnkgPSAncHJlX3Bvc3RfaW50ZXJ2ZW50aW9uJywgCiAgICBjb2xrZXkgPSBjKCJwcmVfWWVsbG93IiA9ICJ5ZWxsb3ciLAogICAgICAgICAgICAgICAicG9zdF9ZZWxsb3ciID0gInllbGxvdzQiLAogICAgICAgICAgICAgICAicHJlX1JlZCIgPSAicGluayIsCiAgICAgICAgICAgICAgICJwb3N0X1JlZCIgPSAicmVkNCIpLAogICAgdGl0bGUgPSAnUGFpcnMgcGxvdCcsIHBsb3RheGVzID0gRkFMU0UsCiAgICBtYXJnaW5nYXBzID0gdW5pdChjKC0wLjAxLCAtMC4wMSwgLTAuMDEsIC0wLjAxKSwgJ2NtJykpKQoKYGBgCgojIyMjIHNleD8KQXJlIHRoZXJlIGFueSBvYnZpb3VzIGNsdXN0ZXJpbmdzIHdoZW4gY29sb3JlZCBieSBzZXg/CgpgYGB7ciwgZmlnLndpZHRoPTEwLCBmaWcuaGVpZ2h0PTEwfQogIHBhaXJzcGxvdChwLAogICAgY29tcG9uZW50cyA9IGdldENvbXBvbmVudHMocCwgYygxOjEwKSksCiAgICB0cmlhbmdsZSA9IFRSVUUsIHRyaWFuZ2xlbGFiU2l6ZSA9IDEyLAogICAgaGxpbmUgPSAwLCB2bGluZSA9IDAsCiAgICBwb2ludFNpemUgPSAwLjQsCiAgICBncmlkbGluZXMubWFqb3IgPSBGQUxTRSwgZ3JpZGxpbmVzLm1pbm9yID0gRkFMU0UsCiAgICBjb2xieSA9ICdTZXgnLCAKICAgIGNvbGtleSA9IGMoIk0iID0gInJlZCIsCiAgICAgICAgICAgICAgICJGIiA9ICJwdXJwbGUiKSwKICAgIHRpdGxlID0gJ1BhaXJzIHBsb3QnLCBwbG90YXhlcyA9IEZBTFNFLAogICAgbWFyZ2luZ2FwcyA9IHVuaXQoYygtMC4wMSwgLTAuMDEsIC0wLjAxLCAtMC4wMSksICdjbScpKQpgYGAKCgojIyMjIHNlcXVlbmNlPwoKYGBge3IsIGZpZy53aWR0aD0xMCwgZmlnLmhlaWdodD0xMH0KICBwYWlyc3Bsb3QocCwKICAgIGNvbXBvbmVudHMgPSBnZXRDb21wb25lbnRzKHAsIGMoMToxMCkpLAogICAgdHJpYW5nbGUgPSBUUlVFLCB0cmlhbmdsZWxhYlNpemUgPSAxMiwKICAgIGhsaW5lID0gMCwgdmxpbmUgPSAwLAogICAgcG9pbnRTaXplID0gMC40LAogICAgZ3JpZGxpbmVzLm1ham9yID0gRkFMU0UsIGdyaWRsaW5lcy5taW5vciA9IEZBTFNFLAogICAgY29sYnkgPSAnc2VxdWVuY2UnLAogICAgdGl0bGUgPSAnUGFpcnMgcGxvdCcsIHBsb3RheGVzID0gRkFMU0UsCiAgICBtYXJnaW5nYXBzID0gdW5pdChjKC0wLjAxLCAtMC4wMSwgLTAuMDEsIC0wLjAxKSwgJ2NtJykpCmBgYAoKIyMgRWlnZW4gY29ycGxvdHMKClRoaXMgaXMgYSBjb29sIHdheSB0byBleHBsb3JlIHRoZSBjb3JyZWxhdGlvbnMgYmV0d2VlbiB0aGUgbWV0YWRhdGEgYW5kIHRoZSBQQ3MhIEkgd2FudCB0byBsb29rIGF0IGhvdyB0aGUgbWV0YXZhcmlhYmxlcyBjb3JyZWxhdGUgd2l0aCBQQ3MgdGhhdCBhY2NvdW50IGZvciA4MCUgdmFyaWF0aW9uIGluIHRoZSBkYXRhc2V0LiAKCkFnYWluOiBIb3cgbWFueSBQQ3MgZG8gd2UgbmVlZCB0byBjYXB0dXJlIGF0IGxlYXN0IDgwJSB2YXJpYW5jZT8KYGBge3J9CndoaWNoKGN1bXN1bShwJHZhcmlhbmNlKSA+IDgwKVsxXQpgYGAKCmBgYHtyLCBmaWcud2lkdGg9MTIsIGZpZy5oZWlnaHQ9Ny41fQogIGVpZ2VuY29ycGxvdChwLAogICAgY29tcG9uZW50cyA9IGdldENvbXBvbmVudHMocCwgMTp3aGljaChjdW1zdW0ocCR2YXJpYW5jZSkgPiA4MClbMV0pLCAjIGdldCBjb21wb25lbnRzIHRoYXQgYWNjb3VudCBmb3IgODAlIHZhcmlhbmNlCiAgICBtZXRhdmFycyA9IGNvbG5hbWVzKG1ldGFkYXRhX2ZvclBDQXRvb2xzKSwKICAgIGNvbCA9IGMoJ2RhcmtibHVlJywgJ2JsdWUyJywgJ2dyYXknLCAncmVkMicsICdkYXJrcmVkJyksCiAgICBjZXhDb3J2YWwgPSAwLjcsCiAgICBjb2xDb3J2YWwgPSAnd2hpdGUnLAogICAgZm9udENvcnZhbCA9IDIsCiAgICBwb3NMYWIgPSAnYm90dG9tbGVmdCcsCiAgICByb3RMYWJYID0gNDUsCiAgICBwb3NDb2xLZXkgPSAndG9wJywKICAgIGNleExhYkNvbEtleSA9IDEuNSwKICAgIHNjYWxlID0gVFJVRSwKICAgIG1haW4gPSAnUEMxLTE1IG1ldGFkYXRhIGNvcnJlbGF0aW9ucycsCiAgICBjb2xGcmFtZSA9ICd3aGl0ZScsCiAgICBwbG90UnNxdWFyZWQgPSBGQUxTRSkKYGBgCgoKYGBge3IsIGZpZy53aWR0aD0xNCwgZmlnLmhlaWdodD03LjV9CiAgZWlnZW5jb3JwbG90KHAsCiAgICBjb21wb25lbnRzID0gZ2V0Q29tcG9uZW50cyhwLCAxOndoaWNoKGN1bXN1bShwJHZhcmlhbmNlKSA+IDgwKVsxXSksCiAgICBtZXRhdmFycyA9IGNvbG5hbWVzKG1ldGFkYXRhX2ZvclBDQXRvb2xzKSwKICAgIGNvbCA9IGMoJ3doaXRlJywgJ2Nvcm5zaWxrMScsICdnb2xkJywgJ2ZvcmVzdGdyZWVuJywgJ2RhcmtncmVlbicpLAogICAgY2V4Q29ydmFsID0gMS4yLAogICAgZm9udENvcnZhbCA9IDIsCiAgICBwb3NMYWIgPSAnYWxsJywKICAgIHJvdExhYlggPSA0NSwKICAgIHNjYWxlID0gVFJVRSwKICAgIG1haW4gPSBicXVvdGUoUHJpbmNpcGFsIH4gY29tcG9uZW50IH4gUGVhcnNvbiB+IHJeMiB+IG1ldGFkYXRhIH4gY29ycmVsYXRlcyksCiAgICBwbG90UnNxdWFyZWQgPSBUUlVFLAogICAgY29yRlVOID0gJ3BlYXJzb24nLAogICAgY29yVVNFID0gJ3BhaXJ3aXNlLmNvbXBsZXRlLm9icycsCiAgICBjb3JNdWx0aXBsZVRlc3RDb3JyZWN0aW9uID0gJ0JIJywKICAgIHNpZ25pZlN5bWJvbHMgPSBjKCcqKioqJywgJyoqKicsICcqKicsICcqJywgJycpLAogICAgc2lnbmlmQ3V0cG9pbnRzID0gYygwLCAwLjAwMDEsIDAuMDAxLCAwLjAxLCAwLjA1LCAxKSkKYGBgCgoKSSBhbSBtb3N0IGludGVyZXN0ZWQgaW4gUENzIGFmZmVjdGVkIGJ5IHByZV9wb3N0X2ludGVydmVudGlvbiwgc28gSSB0aGluayBpdCB3b3VsZCBiZSBnb29kIHRvIGludmVzdGlnYXRlIHRoZSBtZXRhYm9saXRlcyB0aGF0IGNvbnRyaWJ1dGUgdGhlIG1vc3QgdG8gdGhlc2UgUENzLgoKCgojIE11bHRpbGV2ZWwgUENBCgpCZWNhdXNlIHRoaXMgaXMgYSBjcm9zc292ZXIgdHJpYWwsIG1lYXN1cmVtZW50cyBhcmUgdGFrZW4gZnJvbSB0aGUgc2FtZSBwZXJzb24gcmVwZWF0ZWRseSBhbmQgdGh1cyBpbnRyb2R1Y2VzIHZhcmlhbmNlIG5vdCBkZXBlbmRlbnQgb24gdGhlIHRyZWF0bWVudCBidXQgdGhlIHN1YmplY3QuIFRvIGFjY291bnQgZm9yIGludGVyaW5kaXZpZHVhbCB2YXJpYXRpb25zIGluIE1WQSwgSSB0cnkgbXVsdGlsZXZlbCBQQ0FzIGZyb20gdGhlIG1peE9taWNzIHBhY2thZ2UuIEhlcmUsIEkgZG8gbm90IHJlbW92ZSBzdWJqZWN0IDYxMDYuCgpgYGB7cn0KbGlicmFyeShtaXhPbWljcykKYGBgCgoKYGBge3J9CiMgbWFrZSBkZiBzdWl0YWJsZSBmb3IgbWl4T21pY3MKRGF0YV9mb3JNUENBIDwtIGltcF9tZXRhYmluZF9jbHVzdF9sb2cyX25vUUNzICU+JQogIG11dGF0ZV9hdCgiU3ViamVjdCIsIGFzLmZhY3RvcikgIyBjaGFuZ2Ugc3ViamVjdCBpZCB0byBmYWN0b3IKIAoKc3VtbWFyeShhcy5mYWN0b3IoRGF0YV9mb3JNUENBJFN1YmplY3QpKQoKIyBtYWtlIGEgdmVjdG9yIGZvciBtZXRhIHZhcmlhYmxlcwoobWV0YXZhciA8LSBEYXRhX2Zvck1QQ0FbLGMoMToxMSldICU+JQogICAgY29sbmFtZXMoKSkKYGBgCgojIyBSZWd1bGFyIHNjb3JlcyBwbG90CmBgYHtyfQptaXhPbWljc1BDQS5yZXN1bHQgPC0gbWl4T21pY3M6OnBjYShEYXRhX2Zvck1QQ0FbLCFuYW1lcyhEYXRhX2Zvck1QQ0EpICVpbiUgbWV0YXZhcl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZSA9IEZBTFNFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VudGVyID0gRkFMU0UpCgpwbG90SW5kaXYobWl4T21pY3NQQ0EucmVzdWx0LCAKICAgICAgICAgIGluZC5uYW1lcyA9IERhdGFfZm9yTVBDQSRTdWJqZWN0LCAKICAgICAgICAgIGdyb3VwID0gRGF0YV9mb3JNUENBJHByZV9wb3N0X2ludGVydmVudGlvbiwgCiAgICAgICAgICBsZWdlbmQgPSBUUlVFLCAKICAgICAgICAgIGxlZ2VuZC50aXRsZSA9ICJUcmVhdG1lbnQiLCAKICAgICAgICAgIHRpdGxlID0gJ1JlZ3VsYXIgUENBLCBDMTggKC0pLCBMb2cyIHRyYW5zZm9ybWVkJykKCmBgYAoKV2Ugc2VlIHRoZSBzYW1lIHRoaW5nIHdlJ3ZlIGJlZW4gc2VlaW5nIHdpdGggNjEwNiBvdmVyd2hlbG1pbmcgUEMyLiBMZXQncyB0cnkgdGhlIG11bHRpbGV2ZWwgcGNhIGFuZCBzZWUgd2hhdCBoYXBwZW5zIQoKIyMgTXVsdGlsZXZlbCBzY29yZXMgcGxvdAoKYGBge3J9Cm11bHRpbGV2ZWxQQ0EucmVzdWx0IDwtIG1peE9taWNzOjpwY2EoRGF0YV9mb3JNUENBWywtKGMoMToxMSkpXSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aWxldmVsID0gRGF0YV9mb3JNUENBJFN1YmplY3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZSA9IEZBTFNFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VudGVyID0gRkFMU0UpCgpwbG90SW5kaXYobXVsdGlsZXZlbFBDQS5yZXN1bHQsIAogICAgICAgICAgaW5kLm5hbWVzID0gRGF0YV9mb3JNUENBJFN1YmplY3QsIAogICAgICAgICAgZ3JvdXAgPSBEYXRhX2Zvck1QQ0EkcHJlX3Bvc3RfaW50ZXJ2ZW50aW9uLCAKICAgICAgICAgIGxlZ2VuZCA9IFRSVUUsIAogICAgICAgICAgbGVnZW5kLnRpdGxlID0gIlRyZWF0bWVudCIsIAogICAgICAgICAgdGl0bGUgPSAnTXVsdGlsZXZlbCBQQ0EsIEMxOCAoLSksIExvZzIgdHJhbnNmb3JtZWQnKQoKYGBgCgpOb3csIGV2ZW4gd2l0aCA2MTA2IHN0aWxsIGluY2x1ZGVkLCB3ZSBzZWUgY2xlYXIgc2VwYXJhdGlvbiBiZXR3ZWVuIHBvc3QtUmVkIGFuZCBvdGhlciB0aW1lcG9pbnRzISBMZXQncyB0YWtlIGEgbG9vayBhdCBhIGxvYWRpbmdzIHBsb3QgdG8gc2VlIHRoZSB0b3AgNDAgZmVhdHVyZXMgdGhhdCBjb250cmlidXRlIHRvIFBDMSBzZXBhcmF0aW9uLgoKIyMjIExvYWRpbmdzIApgYGB7ciwgZmlnLndpZHRoPTEyLCBmaWcuaGVpZ2h0PTEyfQpwbG90TG9hZGluZ3MobXVsdGlsZXZlbFBDQS5yZXN1bHQsIG5kaXNwbGF5ID0gNDApCmBgYAoKRmVhdHVyZSAyMDEuMDIyOCBzdGlsbCBpcyB0aGUgdG9wIGRyaXZlciBvZiBzZXBhcmF0aW9uLiBNb3JlIGRpZ2dpbmcgaW50byBQQ0EvTVZBIHRvIGNvbWUhCgojIFVuaXZhcmlhdGUgYW5hbHlzaXMKCiMjIFdyYW5nbGUgZGF0YQpgYGB7cn0KIyB1c2UgdGlkeSBkYXRhIApoZWFkKGltcF9tZXRhYmluZF9jbHVzdF90aWR5X2xvZzIpCgojIHJlbW92ZSBRQ3MKZGZfZm9yX3N0YXRzIDwtIGltcF9tZXRhYmluZF9jbHVzdF90aWR5X2xvZzIgJT4lCiAgZmlsdGVyKEludGVydmVudGlvbiAhPSAiUUMiKQoKIyBjaGVjayBpZiBRQ3Mgd2VyZSByZW1vdmVkCnVuaXF1ZShkZl9mb3Jfc3RhdHMkSW50ZXJ2ZW50aW9uKQpgYGAKCmBgYHtyfQojIGRmIHdpdGhvdXQgb3V0bGllciA2MTA2CmRmX2Zvcl9zdGF0c19ub091dGxpZXIgPC0gZGZfZm9yX3N0YXRzICU+JQogIGZpbHRlcihTdWJqZWN0ICE9ICI2MTA2IikKCiMgY2hlY2sgaWYgb3V0bGllciB3YXMgcmVtb3ZlZAp1bmlxdWUoZGZfZm9yX3N0YXRzX25vT3V0bGllciRTdWJqZWN0KQpgYGAKCmBgYHtyfQojIHR1cm4gb2ZmIHNjaSBub3RhdGlvbiBvdXRwdXRzCm9wdGlvbnMoc2NpcGVuID0gOTk5KQpgYGAKCgojIyBQYXJhbWV0cmljIHRlc3RzCgojIyBBTk9WQSAocmVwZWF0ZWQgbWVhc3VyZXMpIGFjcm9zcyB0aW1lcG9pbnRzCgpgYGB7cn0KCmFub3ZhX291dHBvdXRfZGYgPC0gZGZfZm9yX3N0YXRzX25vT3V0bGllciAlPiUgCiAgZHBseXI6OnNlbGVjdChTdWJqZWN0LCBwcmVfcG9zdF9pbnRlcnZlbnRpb24sIG16X3J0LCByZWxfYWJ1bmRfbG9nMikgJT4lCiAgZ3JvdXBfYnkobXpfcnQpICU+JQogIGFub3ZhX3Rlc3QocmVsX2FidW5kX2xvZzIgfiBwcmVfcG9zdF9pbnRlcnZlbnRpb24sIHdpZCA9IFN1YmplY3QsCiAgICAgICAgICAgICBkZXRhaWxlZCA9IFRSVUUpICU+JQogIGFkanVzdF9wdmFsdWUobWV0aG9kID0gIkJIIikgJT4lCiAgYXMuZGF0YS5mcmFtZSgpCgphbm92YV9zaWcgPC0gYW5vdmFfb3V0cG91dF9kZiAlPiUKICBmaWx0ZXIocC5hZGogPD0gLjA1KQoKIyBob3cgbWFueSBzaWduaWZpY2FudCBmZWF0dXJlcz8KbnJvdyhhbm92YV9zaWcpCiAgCmBgYAoKIyMjIEhlYXRtYXAgb2YgZmVhdHVyZXMgc2lnbmlmaWNhbnQgYnkgQU5PVkEKCmBgYHtyLCBmaWcuaGVpZ2h0PTIwLCBmaWcud2lkdGg9MTIsIGZpZy5hc3A9MX0KIyBnbyBiYWNrIHRvIHdpZGUgZm9yIHN0YXRzIGRmCmRmX2Zvcl9zdGF0c193aWRlX25vT3V0bGllciA8LSBkZl9mb3Jfc3RhdHNfbm9PdXRsaWVyICU+JQogIGRwbHlyOjpzZWxlY3QoIXJlbF9hYnVuZCkgJT4lCiAgcGl2b3Rfd2lkZXIobmFtZXNfZnJvbSA9IG16X3J0LAogICAgICAgICAgICAgIHZhbHVlc19mcm9tID0gcmVsX2FidW5kX2xvZzIpCgpBTk9WQV9oZWF0bWFwX2RhdGEgPC0gZGZfZm9yX3N0YXRzX3dpZGVfbm9PdXRsaWVyICU+JQogIHVuaXRlKCJTdWJqZWN0X3ByZV9wb3N0X2ludGVydmVudGlvbiIsIFN1YmplY3QsIHByZV9wb3N0X2ludGVydmVudGlvbiwgc2VwID0gIl8iLCByZW1vdmUgPSBGQUxTRSkgJT4lCiAgZHBseXI6OnNlbGVjdChTdWJqZWN0LCBTdWJqZWN0X3ByZV9wb3N0X2ludGVydmVudGlvbiwgcHJlX3Bvc3QsIGFsbF9vZihhbm92YV9zaWckbXpfcnQpKQoKCkFOT1ZBX2hlYXRtYXAgPC0gCiAgcGhlYXRtYXAoQU5PVkFfaGVhdG1hcF9kYXRhWywtYygxOjMpXSwKICAgICAgICAgICBzY2FsZSA9ICJjb2x1bW4iLAogICAgICAgICAgIGNsdXN0ZXJfcm93cyA9IFRSVUUsCiAgICAgICAgICAgY2x1c3RlcmluZ19kaXN0YW5jZV9yb3dzID0gImV1Y2xpZGVhbiIsCiAgICAgICAgICAgY2x1c3RlcmluZ19kaXN0YW5jZV9jb2xzID0gImV1Y2xpZGVhbiIsCiAgICAgICAgICAgY2x1c3RlcmluZ19tZXRob2QgPSAid2FyZC5EMiIsCiAgICAgICAgICAgbGFiZWxzX3JvdyA9IEFOT1ZBX2hlYXRtYXBfZGF0YSRTdWJqZWN0X3ByZV9wb3N0X2ludGVydmVudGlvbiwKICAgICAgICAgICBjb2xvciA9IGNvbG9yUmFtcFBhbGV0dGUoYygiIzY3YTljZiIsICIjZjdmN2Y3IiwgIiNlZjhhNjIiKSkoMTYpLAogICAgICAgICAgIG1haW4gPSAiSGVhdG1hcCBvZiBmZWF0dXJlcyBzaWduaWZpY2FudCBhY3Jvc3MgdGltZXBvaW50cyBcbmJ5IHJlcGVhdGVkIG1lYXN1cmVzIG9uZS13YXkgQU5PVkEgXG5CZW5qYW1vbmktSG9jaGJlcmcgY29ycmVjdGVkIHAtdmFsdWVzID4gMC4wNSBcbkMxOCAoLSkiKQogIApgYGAKCgpgYGB7cn0KZ2dzYXZlKHBsb3QgPSBBTk9WQV9oZWF0bWFwLCBoZWlnaHQgPSAyMCwgd2lkdGggPSAxMiwKICAgICAgIGZpbGVuYW1lID0gInBsb3RzIGFuZCBmaWd1cmVzL0FOT1ZBX3NpZ19oZWF0bWFwLnN2ZyIpCmBgYAoKIyMjIFBhaXJlZCB0IHRlc3RzCgpIZXJlLCBJIGFtIGNvbXBhcmluZyBwcmUtIHRvIHBvc3QtaW50ZXJ2ZW50aW9uIGZvciBib3RoIHllbGxvdyBhbmQgdG9tYXRvIHNveSAoUmVkKSBqdWljZSBpbnRlcnZlbnRpb25zLiBJIGFsc28gY29tcGFyZSBwb3N0LXllbGxvdyB0byBwb3N0LXJlZCBpbnRlcnZlbnRpb24uIEkgYW0gdXNpbmcgdGhlIGxvZyB0cmFuc2Zvcm1lZCB2YWx1ZXMgb2YgcmVsIGFidW5kYW5jZSBzaW5jZSBwYXJhbWV0cmljIHRlc3RzIGFzc3VtZSBub3JtYWxpdHkuCgojIyMjIEN0cmwKYGBge3J9CiMgcnVuIHBhaXJlZCB0LXRlc3RzIGZvciBjb250cm9sIGludGVydmVudGlvbgpjdHJsX3QudGVzdF9wYWlyZWQgPC0gZGZfZm9yX3N0YXRzICU+JQogIGZpbHRlcihJbnRlcnZlbnRpb24gPT0gIlllbGxvdyIpICU+JQogIGRwbHlyOjpzZWxlY3QoU3ViamVjdCwgcHJlX3Bvc3QsIG16X3J0LCByZWxfYWJ1bmRfbG9nMikgJT4lCiAgZ3JvdXBfYnkobXpfcnQpICU+JQogIHRfdGVzdChyZWxfYWJ1bmRfbG9nMiB+IHByZV9wb3N0LCAKICAgICAgICAgcGFpcmVkID0gVFJVRSwgCiAgICAgICAgIHAuYWRqdXN0Lm1ldGhvZCA9ICJCSCIpICU+JSAjIEJlbmphbWluaS1Ib2NoYmVyZyBjb250cm9sbGluZyB0byBsb3dlciBmYWxzZSBwb3NpdGl2ZXMKICBhZGRfc2lnbmlmaWNhbmNlKCkKYGBgCgpTdGF0aXN0aWNhbGx5IHNpZ25pZmljYW50IGZlYXR1cmVzCmBgYHtyfQojIHdoaWNoIGZlYXR1cmVzIGFyZSBzaWduaWZpY2FudD8KY3RybF90LnRlc3RfcGFpcmVkX3NpZyA8LSBjdHJsX3QudGVzdF9wYWlyZWQgJT4lCiAgZmlsdGVyKHAgPD0gMC4wNSkKa2FibGUoY3RybF90LnRlc3RfcGFpcmVkX3NpZykKCiMgaG93IG1hbnkgYXJlIHNpZ25pZmljYW50Pwpucm93KGN0cmxfdC50ZXN0X3BhaXJlZF9zaWcpCmBgYAoKCiMjIyMgQ3RybCAtIG5vIG91dGxpZXIKYGBge3J9CiMgcnVuIHBhaXJlZCB0LXRlc3RzIGZvciBjb250cm9sIGludGVydmVudGlvbgpjdHJsX25vT3V0bGllcl90LnRlc3RfcGFpcmVkIDwtIGRmX2Zvcl9zdGF0c19ub091dGxpZXIgJT4lCiAgZmlsdGVyKEludGVydmVudGlvbiA9PSAiWWVsbG93IikgJT4lCiAgZHBseXI6OnNlbGVjdChTdWJqZWN0LCBwcmVfcG9zdCwgbXpfcnQsIHJlbF9hYnVuZF9sb2cyKSAlPiUKICBncm91cF9ieShtel9ydCkgJT4lCiAgdF90ZXN0KHJlbF9hYnVuZF9sb2cyIH4gcHJlX3Bvc3QsIAogICAgICAgICBwYWlyZWQgPSBUUlVFLCAKICAgICAgICAgcC5hZGp1c3QubWV0aG9kID0gIkJIIikgJT4lICMgQmVuamFtaW5pLUhvY2hiZXJnIGNvbnRyb2xsaW5nIHRvIGxvd2VyIGZhbHNlIHBvc2l0aXZlcwogIGFkZF9zaWduaWZpY2FuY2UoKQpgYGAKClN0YXRpc3RpY2FsbHkgc2lnbmlmaWNhbnQgZmVhdHVyZXMKYGBge3J9CiMgd2hpY2ggZmVhdHVyZXMgYXJlIHNpZ25pZmljYW50PwpjdHJsX25vT3V0bGllcl90LnRlc3RfcGFpcmVkX3NpZyA8LSBjdHJsX25vT3V0bGllcl90LnRlc3RfcGFpcmVkICU+JQogIGZpbHRlcihwIDw9IDAuMDUpCmthYmxlKGN0cmxfbm9PdXRsaWVyX3QudGVzdF9wYWlyZWRfc2lnKQoKIyBob3cgbWFueSBhcmUgc2lnbmlmaWNhbnQ/Cm5yb3coY3RybF9ub091dGxpZXJfdC50ZXN0X3BhaXJlZF9zaWcpCmBgYAoKIyMjIyMgTXVtbWljaG9nIGxpc3QKYGBge3J9CnllbF9mb3JfbXVtbWljaG9nIDwtIGN0cmxfbm9PdXRsaWVyX3QudGVzdF9wYWlyZWQgJT4lCiAgZHBseXI6OnNlbGVjdChtel9ydCwKICAgICAgICAgcCwKICAgICAgICAgc3RhdGlzdGljKSAlPiUKICBzZXBhcmF0ZShjb2wgPSBtel9ydCwKICAgICAgICAgICBpbnRvID0gYygibS96IiwgInJ0IiksCiAgICAgICAgICAgc2VwID0gIl8iKSAlPiUKICByZW5hbWUoInAtdmFsdWUiID0gInAiKSAlPiUKICByZW5hbWUoInQtc2NvcmUiID0gInN0YXRpc3RpYyIpCgp3cml0ZV9jc3YoeWVsX2Zvcl9tdW1taWNob2csCiAgICAgICAgICAieWVsY29tcC1tdW1taWNob2ctbGlzdC1jMThuZWcuY3N2IikKCmBgYAoKIyMjIyBSZWQKYGBge3J9CiMgcnVuIHBhaXJlZCB0LXRlc3RzIGZvciBjb250cm9sIGludGVydmVudGlvbgpyZWRfdC50ZXN0X3BhaXJlZCA8LSBkZl9mb3Jfc3RhdHMgJT4lCiAgZmlsdGVyKEludGVydmVudGlvbiA9PSAiUmVkIikgJT4lCiAgZHBseXI6OnNlbGVjdChTdWJqZWN0LCBwcmVfcG9zdCwgbXpfcnQsIHJlbF9hYnVuZF9sb2cyKSAlPiUKICBncm91cF9ieShtel9ydCkgJT4lCiAgdF90ZXN0KHJlbF9hYnVuZF9sb2cyIH4gcHJlX3Bvc3QsIAogICAgICAgICBwYWlyZWQgPSBUUlVFLCAKICAgICAgICAgcC5hZGp1c3QubWV0aG9kID0gIkJIIikgJT4lICMgQmVuamFtaW5pLUhvY2hiZXJnIGNvbnRyb2xsaW5nIHRvIGxvd2VyIGZhbHNlIHBvc2l0aXZlcwogIGFkZF9zaWduaWZpY2FuY2UoKQpgYGAKClN0YXRpc3RpY2FsbHkgc2lnbmlmaWNhbnQgZmVhdHVyZXMKYGBge3J9CiMgd2hpY2ggZmVhdHVyZXMgYXJlIHNpZ25pZmljYW50PwpyZWRfdC50ZXN0X3BhaXJlZF9zaWcgPC0gcmVkX3QudGVzdF9wYWlyZWQgJT4lCiAgZmlsdGVyKHAgPD0gMC4wNSkKa2FibGUocmVkX3QudGVzdF9wYWlyZWRfc2lnKQoKIyBob3cgbWFueSBhcmUgc2lnbmlmaWNhbnQ/Cm5yb3cocmVkX3QudGVzdF9wYWlyZWRfc2lnKQpgYGAKCgojIyMjIFJlZCBXaXRob3V0IG91dGxpZXIKYGBge3J9CiMgcnVuIHBhaXJlZCB0LXRlc3RzIGZvciBjb250cm9sIGludGVydmVudGlvbgpyZWRfbm9PdXRsaWVyX3QudGVzdF9wYWlyZWQgPC0gZGZfZm9yX3N0YXRzX25vT3V0bGllciAlPiUKICBmaWx0ZXIoSW50ZXJ2ZW50aW9uID09ICJSZWQiKSAlPiUKICBkcGx5cjo6c2VsZWN0KFN1YmplY3QsIHByZV9wb3N0LCBtel9ydCwgcmVsX2FidW5kX2xvZzIpICU+JQogIGdyb3VwX2J5KG16X3J0KSAlPiUKICB0X3Rlc3QocmVsX2FidW5kX2xvZzIgfiBwcmVfcG9zdCwgCiAgICAgICAgIHBhaXJlZCA9IFRSVUUsIAogICAgICAgICBwLmFkanVzdC5tZXRob2QgPSAiQkgiKSAlPiUgIyBCZW5qYW1pbmktSG9jaGJlcmcgY29udHJvbGxpbmcgdG8gbG93ZXIgZmFsc2UgcG9zaXRpdmVzCiAgYWRkX3NpZ25pZmljYW5jZSgpCmBgYAoKU3RhdGlzdGljYWxseSBzaWduaWZpY2FudCBmZWF0dXJlcwpgYGB7cn0KIyB3aGljaCBmZWF0dXJlcyBhcmUgc2lnbmlmaWNhbnQ/CnJlZF9ub091dGxpZXJfdC50ZXN0X3BhaXJlZF9zaWcgPC0gcmVkX25vT3V0bGllcl90LnRlc3RfcGFpcmVkICU+JQogIGZpbHRlcihwIDw9IDAuMDUpCmthYmxlKHJlZF9ub091dGxpZXJfdC50ZXN0X3BhaXJlZF9zaWcpCgojIGhvdyBtYW55IGFyZSBzaWduaWZpY2FudD8KbnJvdyhyZWRfbm9PdXRsaWVyX3QudGVzdF9wYWlyZWRfc2lnKQpgYGAKCgojIyMjIyBNdW1taWNob2cgZXhwb3J0CmBgYHtyfQpyZWRfZm9yX211bW1pY2hvZyA8LSByZWRfbm9PdXRsaWVyX3QudGVzdF9wYWlyZWQgJT4lCiAgZHBseXI6OnNlbGVjdChtel9ydCwKICAgICAgICAgcCwKICAgICAgICAgc3RhdGlzdGljKSAlPiUKICBzZXBhcmF0ZShjb2wgPSBtel9ydCwKICAgICAgICAgICBpbnRvID0gYygibS96IiwgInJ0IiksCiAgICAgICAgICAgc2VwID0gIl8iKSAlPiUKICByZW5hbWUoInAtdmFsdWUiID0gInAiKSAlPiUKICByZW5hbWUoInQtc2NvcmUiID0gInN0YXRpc3RpYyIpCgp3cml0ZV9jc3YocmVkX2Zvcl9tdW1taWNob2csCiAgICAgICAgICAicmVkY29tcC1tdW1taWNob2ctbGlzdC1jMThuZWcuY3N2IikKCmBgYAoKIyMjIyBQb3N0LXJlZCB2cyBwb3N0LXllbGxvdwoKYGBge3J9CiMgcnVuIHBhaXJlZCB0LXRlc3RzIGZvciBwb3N0IGludGVydmVudGlvbnMKcG9zdF90LnRlc3RfcGFpcmVkIDwtIGRmX2Zvcl9zdGF0cyAlPiUKICBmaWx0ZXIocHJlX3Bvc3QgPT0gInBvc3QiKSAlPiUKICBkcGx5cjo6c2VsZWN0KFN1YmplY3QsIEludGVydmVudGlvbiwgbXpfcnQsIHJlbF9hYnVuZF9sb2cyKSAlPiUKICBncm91cF9ieShtel9ydCkgJT4lCiAgdF90ZXN0KHJlbF9hYnVuZF9sb2cyIH4gSW50ZXJ2ZW50aW9uLCAKICAgICAgICAgcGFpcmVkID0gVFJVRSwgCiAgICAgICAgIHAuYWRqdXN0Lm1ldGhvZCA9ICJCSCIpICU+JSAjIEJlbmphbWluaS1Ib2NoYmVyZyBjb250cm9sbGluZyB0byBsb3dlciBmYWxzZSBwb3NpdGl2ZXMKICBhZGRfc2lnbmlmaWNhbmNlKCkKYGBgCgpTdGF0aXN0aWNhbGx5IHNpZ25pZmljYW50IGZlYXR1cmVzCmBgYHtyfQojIHdoaWNoIGZlYXR1cmVzIGFyZSBzaWduaWZpY2FudD8KcG9zdF90LnRlc3RfcGFpcmVkX3NpZyA8LSBwb3N0X3QudGVzdF9wYWlyZWQgJT4lCiAgZmlsdGVyKHAgPD0gMC4wNSkKa2FibGUocG9zdF90LnRlc3RfcGFpcmVkX3NpZykKCiMgaG93IG1hbnkgYXJlIHNpZ25pZmljYW50Pwpucm93KHBvc3RfdC50ZXN0X3BhaXJlZF9zaWcpCmBgYAoKIyMjIyBQb3N0LXJlZCB2cyBwb3N0LXllbGxvdyBXaXRob3V0IE91dGxpZXIKCmBgYHtyfQojIHJ1biBwYWlyZWQgdC10ZXN0cyBmb3IgcG9zdCBpbnRlcnZlbnRpb25zCnBvc3Rfbm9PdXRsaWVyX3QudGVzdF9wYWlyZWQgPC0gZGZfZm9yX3N0YXRzICU+JQogIGZpbHRlcihwcmVfcG9zdCA9PSAicG9zdCIsCiAgICAgICAgIFN1YmplY3QgIT0gIjYxMDYiKSAlPiUKICBkcGx5cjo6c2VsZWN0KFN1YmplY3QsIEludGVydmVudGlvbiwgbXpfcnQsIHJlbF9hYnVuZF9sb2cyKSAlPiUKICBncm91cF9ieShtel9ydCkgJT4lCiAgdF90ZXN0KHJlbF9hYnVuZF9sb2cyIH4gSW50ZXJ2ZW50aW9uLCAKICAgICAgICAgcGFpcmVkID0gVFJVRSwgCiAgICAgICAgIHAuYWRqdXN0Lm1ldGhvZCA9ICJCSCIpICU+JSAjIEJlbmphbWluaS1Ib2NoYmVyZyBjb250cm9sbGluZyB0byBsb3dlciBmYWxzZSBwb3NpdGl2ZXMKICBhZGRfc2lnbmlmaWNhbmNlKCkKYGBgCgpTdGF0aXN0aWNhbGx5IHNpZ25pZmljYW50IGZlYXR1cmVzCmBgYHtyfQojIHdoaWNoIGZlYXR1cmVzIGFyZSBzaWduaWZpY2FudD8KcG9zdF9ub091dGxpZXJfdC50ZXN0X3BhaXJlZF9zaWcgPC0gcG9zdF9ub091dGxpZXJfdC50ZXN0X3BhaXJlZCAlPiUKICBmaWx0ZXIocCA8PSAwLjA1KQprYWJsZShwb3N0X25vT3V0bGllcl90LnRlc3RfcGFpcmVkX3NpZykKCiMgaG93IG1hbnkgYXJlIHNpZ25pZmljYW50Pwpucm93KHBvc3Rfbm9PdXRsaWVyX3QudGVzdF9wYWlyZWRfc2lnKQpgYGAKCiMjIyMjIE11bW1pY2hvZyBleHBvcnQKCmBgYHtyfQpwb3N0Y29tcF9mb3JfbXVtbWljaG9nIDwtIHBvc3Rfbm9PdXRsaWVyX3QudGVzdF9wYWlyZWQgJT4lCiAgZHBseXI6OnNlbGVjdChtel9ydCwKICAgICAgICAgcCwKICAgICAgICAgc3RhdGlzdGljKSAlPiUKICBzZXBhcmF0ZShjb2wgPSBtel9ydCwKICAgICAgICAgICBpbnRvID0gYygibS56IiwgInIudCIpLAogICAgICAgICAgIHNlcCA9ICJfIikgJT4lCiAgcmVuYW1lKCJwLnZhbHVlIiA9ICJwIikgJT4lCiAgcmVuYW1lKCJ0LnNjb3JlIiA9ICJzdGF0aXN0aWMiKQoKd3JpdGVfY3N2KHBvc3Rjb21wX2Zvcl9tdW1taWNob2csCiAgICAgICAgICAicG9zdC1jb21wLW11bW1pY2hvZy1saXN0LWMxOG5lZy5jc3YiKQoKCmBgYAoKIyMjIyBPdXRsaWVyIGNvbXBhcmlzb24KQXJlIHRoZXJlIGFueSBzaWduaWZpY2FudCBmZWF0dXJlcyBzaGFyZWQgYmV0d2VlbiB0ZXN0cyB3aXRoIGFuZCB3aXRob3V0IG91dGxpZXI/CgpgYGB7cn0KIyByZXR1cm4gc2lnIGZlYXR1cmVzIHByZXNlbnQgb25seSBpbiBkZiB3aXRoIG91dGxpZXIsIGFuZCBub3QgaW4gZGYgd2l0aG91dCBvdXRsaWVyCmthYmxlKGFudGlfam9pbihwb3N0X25vT3V0bGllcl90LnRlc3RfcGFpcmVkX3NpZywKICAgICAgICAgIHBvc3RfdC50ZXN0X3BhaXJlZF9zaWcsCiAgICAgICAgICBieSA9ICJtel9ydCIpKQoKbnJvdyhhbnRpX2pvaW4ocG9zdF9ub091dGxpZXJfdC50ZXN0X3BhaXJlZF9zaWcsCiAgICAgICAgICBwb3N0X3QudGVzdF9wYWlyZWRfc2lnLAogICAgICAgICAgYnkgPSAibXpfcnQiKSkKCiMgcmV0dXJuIHNpZyBmZWF0dXJlcyBmcm9tIGRmIHdpdGggbm8gb3V0bGllciB0aGF0IGFyZSBhbHNvIHByZXNlbnQgaW4gZGYgd2l0aCBvdXRsaWVyCmthYmxlKHNlbWlfam9pbihwb3N0X25vT3V0bGllcl90LnRlc3RfcGFpcmVkX3NpZywKICAgICAgICAgIHBvc3RfdC50ZXN0X3BhaXJlZF9zaWcsCiAgICAgICAgICBieSA9ICJtel9ydCIpKQoKbnJvdyhzZW1pX2pvaW4ocG9zdF9ub091dGxpZXJfdC50ZXN0X3BhaXJlZF9zaWcsCiAgICAgICAgICBwb3N0X3QudGVzdF9wYWlyZWRfc2lnLAogICAgICAgICAgYnkgPSAibXpfcnQiKSkKYGBgCgoKIyMjIFN0YW5kYXJkIGNvbXBhcmlzb25zCgpIZXJlLCBJIHdhbnQgdG8gb25seSBmb2N1cyBvbiB0aGUgbWV0YWJvbGl0ZXMgdGhhdCBJIGh5cG90aGVzaXplZCB0byBjaGFuZ2UuIFRoaXMgd2F5IEkgY2FuIGF2b2lkIG11bHRpcGxlIGNvcnJlY3Rpb24gYWRqdXN0bWVudHMgYW5kIHNlZSBpZiBJIGNhbiBjYXB0dXJlIGFueSBzaWduaWZpY2FudCBkaWZmZXJlbmNlcyBhdCBkaWZmZXJlbnQgdGltZXBvaW50cwoKIyMjIyBXcmFuZ2xlCgpgYGB7cn0Kc3Rkc19kZl9mb3Jfc3RhdHNfd2lkZSA8LSBkZl9mb3Jfc3RhdHMgJT4lCiAgZHBseXI6OnNlbGVjdCghcmVsX2FidW5kKSAlPiUKICBwaXZvdF93aWRlcihuYW1lc19mcm9tID0gbXpfcnQsCiAgICAgICAgICAgICAgdmFsdWVzX2Zyb20gPSByZWxfYWJ1bmRfbG9nMikgJT4lCiAgZHBseXI6OnNlbGVjdChjKDE6MTEpLAogICAgICAgICAgICAgICAgIjE3OC4wNTE1XzMuNDc5IiwgI2hpcHB1cmljIGFjaWQKICAgICAgICAgICAgICAgICIxNzkuMDU1Nl8wLjY0MyIsICNnbHVjb3NlCiAgICAgICAgICAgICAgICAiMTU0LjA2MjFfMC42MDkiLCAjaGlzdGlkaW5lCiAgICAgICAgICAgICAgICAiMTkxLjAyMDNfMC42OTciLCAjY2l0cmljIGFjaWQKICAgICAgICAgICAgICAgICIyMTIuMDAyN18zLjMwNCIsICNpbmRveHlsIHN1bGZhdGUKICAgICAgICAgICAgICAgICIyNTMuMDUwM181LjA0OCIsICNkYWlkemVpbgogICAgICAgICAgICAgICAgIjI1Ny4wODE2XzYuMDU2IiAjTy1ETUEKICAgICAgICAgICAgICAgICkgCgojIG1ha2UgdGlkeSBkZgpzdGRzX2RmX2ZvcnN0YXRzX3RpZHkgPC0gc3Rkc19kZl9mb3Jfc3RhdHNfd2lkZSAlPiUKICBwaXZvdF9sb25nZXIoY29scyA9IDEyOm5jb2woLiksCiAgICAgICAgICAgICAgIG5hbWVzX3RvID0gIm16X3J0IiwKICAgICAgICAgICAgICAgdmFsdWVzX3RvID0gInJlbF9hYnVuZF9sb2cyIikKYGBgCgoKYGBge3J9CiMgY2hhbmdpbmcgZmFjdG9yIGxldmVscyBmb3IgcHJlX3Bvc3RfaW50ZXJ2ZW50aW9uCnN0ZHNfZGZfZm9yc3RhdHNfdGlkeSRwcmVfcG9zdF9pbnRlcnZlbnRpb24gPC0gZmFjdG9yKHN0ZHNfZGZfZm9yc3RhdHNfdGlkeSRwcmVfcG9zdF9pbnRlcnZlbnRpb24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldmVscyA9IGMoInByZV9ZZWxsb3ciLCAicG9zdF9ZZWxsb3ciLCAicHJlX1JlZCIsICJwb3N0X1JlZCIpKQoKbGV2ZWxzKHN0ZHNfZGZfZm9yc3RhdHNfdGlkeSRwcmVfcG9zdF9pbnRlcnZlbnRpb24pICAKYGBgCgoKIyMjIyBCb3hwbG90cwpgYGB7ciwgZmlnLndpZHRoPTEyfQpzdGRzX2RmX2ZvcnN0YXRzX3RpZHkgJT4lIAogIGdncGxvdChhZXMoeCA9IHByZV9wb3N0X2ludGVydmVudGlvbiwgeSA9IHJlbF9hYnVuZF9sb2cyLCBmaWxsID0gSW50ZXJ2ZW50aW9uKSkgKwogIGdlb21fYm94cGxvdChvdXRsaWVyLnNoYXBlID0gTkEpICsKICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXMgPSBjKCJZZWxsb3ciID0gImdvbGQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJlZCIgPSAidG9tYXRvMSIpKSArCiAgZ2VvbV9saW5lKGFlcyhncm91cCA9IFN1YmplY3QpLCBjb2xvdXIgPSAicHVycGxlIiwgbGluZXdpZHRoID0gMC4yKSArCiAgZmFjZXRfd3JhcCh2YXJzKG16X3J0KSwgc2NhbGVzID0gImZyZWVfeSIpICsgCiAgdGhlbWVfYncoKSAKYGBgCgojIyMjIENvbnRyb2wgdC10ZXN0CmBgYHtyfQojIHJ1biBwYWlyZWQgdC10ZXN0cyBmb3IgYmVmb3JlIHZzLiBhZnRldCBjb250cm9sIGludGVydmVudGlvbgpzdGRzX2N0cmxfdC50ZXN0X3BhaXJlZCA8LSBzdGRzX2RmX2ZvcnN0YXRzX3RpZHkgJT4lCiAgZmlsdGVyKEludGVydmVudGlvbiA9PSAiWWVsbG93IikgJT4lCiAgZHBseXI6OnNlbGVjdChTdWJqZWN0LCBwcmVfcG9zdCwgbXpfcnQsIHJlbF9hYnVuZF9sb2cyKSAlPiUKICBmaWx0ZXIoU3ViamVjdCAhPSA2MTA2KSAlPiUgIyByZW1vdmUgb3V0bGllcnMKICBncm91cF9ieShtel9ydCkgJT4lCiAgdF90ZXN0KHJlbF9hYnVuZF9sb2cyIH4gcHJlX3Bvc3QsIAogICAgICAgICBwYWlyZWQgPSBUUlVFKSAlPiUgCiAgYWRkX3NpZ25pZmljYW5jZSgpCmBgYAoKU3RhdGlzdGljYWxseSBzaWduaWZpY2FudCBmZWF0dXJlcwpgYGB7cn0KIyB3aGljaCBmZWF0dXJlcyBhcmUgc2lnbmlmaWNhbnQ/CnN0ZHNfY3RybF90LnRlc3RfcGFpcmVkX3NpZyA8LSBzdGRzX2N0cmxfdC50ZXN0X3BhaXJlZCAlPiUKICBmaWx0ZXIocCA8PSAwLjA1KQp0aWJibGUoc3Rkc19jdHJsX3QudGVzdF9wYWlyZWRfc2lnKQoKIyBob3cgbWFueSBhcmUgc2lnbmlmaWNhbnQ/Cm5yb3coc3Rkc19jdHJsX3QudGVzdF9wYWlyZWRfc2lnKQpgYGAKCiMjIyMgUmVkIHQtdGVzdHMKYGBge3J9CiMgcnVuIHBhaXJlZCB0LXRlc3RzIGZvciBiZWZvcmUgdnMuIGFmdGVyIHJlZCBpbnRlcnZlbnRpb24Kc3Rkc19yZWRfdC50ZXN0X3BhaXJlZCA8LSBzdGRzX2RmX2ZvcnN0YXRzX3RpZHkgJT4lCiAgZmlsdGVyKEludGVydmVudGlvbiA9PSAiUmVkIikgJT4lCiAgZHBseXI6OnNlbGVjdChTdWJqZWN0LCBwcmVfcG9zdCwgbXpfcnQsIHJlbF9hYnVuZF9sb2cyKSAlPiUKICBmaWx0ZXIoU3ViamVjdCAhPSA2MTA2KSAlPiUKICBncm91cF9ieShtel9ydCkgJT4lCiAgdF90ZXN0KHJlbF9hYnVuZF9sb2cyIH4gcHJlX3Bvc3QsIAogICAgICAgICBwYWlyZWQgPSBUUlVFKSAlPiUgCiAgYWRkX3NpZ25pZmljYW5jZSgpCmBgYAoKU3RhdGlzdGljYWxseSBzaWduaWZpY2FudCBmZWF0dXJlcwpgYGB7cn0KIyB3aGljaCBmZWF0dXJlcyBhcmUgc2lnbmlmaWNhbnQ/CnN0ZHNfcmVkX3QudGVzdF9wYWlyZWRfc2lnIDwtIHN0ZHNfcmVkX3QudGVzdF9wYWlyZWQgJT4lCiAgZmlsdGVyKHAgPD0gMC4wNSkKdGliYmxlKHN0ZHNfcmVkX3QudGVzdF9wYWlyZWRfc2lnKQoKIyBob3cgbWFueSBhcmUgc2lnbmlmaWNhbnQ/Cm5yb3coc3Rkc19yZWRfdC50ZXN0X3BhaXJlZF9zaWcpCmBgYAoKIyMjIyBJbnRlcnZlbnRpb24gdC10ZXN0cwoKYGBge3J9CiMgcnVuIHBhaXJlZCB0LXRlc3RzIGZvciBwb3N0LXJlZCB2cy4gcG9zdC1jb250cm9sIGludGVydmVudGlvbgpzdGRzX3Bvc3RfdC50ZXN0X3BhaXJlZCA8LSBzdGRzX2RmX2ZvcnN0YXRzX3RpZHkgJT4lCiAgZmlsdGVyKHByZV9wb3N0ID09ICJwb3N0IikgJT4lCiAgZHBseXI6OnNlbGVjdChTdWJqZWN0LCBwcmVfcG9zdF9pbnRlcnZlbnRpb24sIG16X3J0LCByZWxfYWJ1bmRfbG9nMikgJT4lCiAgZmlsdGVyKFN1YmplY3QgIT0gNjEwNikgJT4lCiAgZ3JvdXBfYnkobXpfcnQpICU+JQogIHRfdGVzdChyZWxfYWJ1bmRfbG9nMiB+IHByZV9wb3N0X2ludGVydmVudGlvbiwgCiAgICAgICAgIHBhaXJlZCA9IFRSVUUpICU+JSAKICBhZGRfc2lnbmlmaWNhbmNlKCkKYGBgCgpTdGF0aXN0aWNhbGx5IHNpZ25pZmljYW50IGZlYXR1cmVzCmBgYHtyfQojIHdoaWNoIGZlYXR1cmVzIGFyZSBzaWduaWZpY2FudD8Kc3Rkc19wb3N0X3QudGVzdF9wYWlyZWRfc2lnIDwtIHN0ZHNfcG9zdF90LnRlc3RfcGFpcmVkICU+JQogIGZpbHRlcihwIDw9IDAuMDUpCnRpYmJsZShzdGRzX3Bvc3RfdC50ZXN0X3BhaXJlZF9zaWcpCgojIGhvdyBtYW55IGFyZSBzaWduaWZpY2FudD8KbnJvdyhzdGRzX3Bvc3RfdC50ZXN0X3BhaXJlZF9zaWcpCmBgYAoKIyMjIFZvbGNhbm8gcGxvdHMKCiMjIyMgUG9zdC1pbnRlcnZlbnRpb24gY29tcGFyaXNvbnMgCgojIyMjIyBXcmFuZ2xlIChubyBvdXRsaWVyKQpgYGB7cn0KIyBjYWxjdWxhdGUgbWVhbiByZWwgYWJ1bmQgKG5vdCBsb2cpIGJ5IHNhbXBsZSwgYW5kIGF2ZyBmb2xkIGNoYW5nZSAoRkMpIGRpZmYgYnkgZmVhdHVyZQpyZWRfdl95ZWxfdm9sY2Fub19kYXRhX25vT3V0bGllciA8LSBkZl9mb3Jfc3RhdHMgJT4lCiAgZmlsdGVyKHByZV9wb3N0ID09ICJwb3N0IiwKICAgICAgICAgU3ViamVjdCAhPSA2MTA2KSAlPiUgIyByZW1vdmUgb3V0bGllciBzdWJqCiAgZ3JvdXBfYnkoSW50ZXJ2ZW50aW9uLCBtel9ydCkgJT4lCiAgc3VtbWFyaXplKG1lYW5fcmVsX2FidW5kID0gbWVhbihyZWxfYWJ1bmQpKSAlPiUKICBwaXZvdF93aWRlcihuYW1lc19mcm9tID0gSW50ZXJ2ZW50aW9uLCB2YWx1ZXNfZnJvbSA9IG1lYW5fcmVsX2FidW5kKSAlPiUKICBtdXRhdGUoRkNfcG9zdFJlZF9kaXZfcG9zdFllbGxvdyA9IFJlZC9ZZWxsb3cpIAoKIyBiaW5kIGJhY2sgcHZhbApyZWRfdl95ZWxfdG9iaW5kX25vT3V0bGllciA8LSBwb3N0X25vT3V0bGllcl90LnRlc3RfcGFpcmVkICU+JQogIGRwbHlyOjpzZWxlY3QocCkKCiMgY2FsY3VsYXRlIGxvZzJGQywgYW5kIC1sb2cxMHAKcmVkX3ZfeWVsX3ZvbGNhbm9fZGF0YV9ub091dGxpZXIgPC0gCiAgYmluZF9jb2xzKHJlZF92X3llbF92b2xjYW5vX2RhdGFfbm9PdXRsaWVyLCByZWRfdl95ZWxfdG9iaW5kX25vT3V0bGllcikgJT4lCiAgbXV0YXRlKGxvZzJfRkNfcG9zdFJlZF9kaXZfcG9zdFllbGxvdyA9IGlmX2Vsc2UoRkNfcG9zdFJlZF9kaXZfcG9zdFllbGxvdyA+IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nMihGQ19wb3N0UmVkX2Rpdl9wb3N0WWVsbG93KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtKGxvZzIoYWJzKEZDX3Bvc3RSZWRfZGl2X3Bvc3RZZWxsb3cpKSkpLCAKICAgICAgICAgbmVnbG9nMTBwID0gLWxvZzEwKHApKQoKCiMgY3JlYXRlIGEgZGYgb2YgZmVhdHVyZXMgcGFzc2luZyBGQyBhbmQgcHZhbCBjdXRvZmZzIGhpZ2hlciBpbiBwb3N0LVJlZApwb3N0UmVkX3NpZ19yZWRfdl95ZWxfdm9sY2Fub19ub091dGxpZXIgPC0gcmVkX3ZfeWVsX3ZvbGNhbm9fZGF0YV9ub091dGxpZXIgJT4lCiAgZmlsdGVyKHAgPD0gMC4wNSAmIGxvZzJfRkNfcG9zdFJlZF9kaXZfcG9zdFllbGxvdyA+PSAwLjYpCgojIGNyZWF0ZSBhIGRmIG9mIGZlYXR1cmVzIHBhc3NpbmcgRkMgYW5kIHB2YWwgY3V0b2ZmcyBoaWdoZXIgaW4gcG9zdC1jb250cm9sCnBvc3RZZWxsb3dfc2lnX3JlZF92X3llbF92b2xjYW5vX25vT3V0bGllciA8LSByZWRfdl95ZWxfdm9sY2Fub19kYXRhX25vT3V0bGllciAlPiUKICBmaWx0ZXIocCA8PSAwLjA1ICYgbG9nMl9GQ19wb3N0UmVkX2Rpdl9wb3N0WWVsbG93IDw9IC0wLjYpICAKYGBgCgojIyMjIyBFeHBvcnQgc2lnIGZlYXR1cmVzCgpDcmVhdGUgZmVhdHVyZSBsaXN0cyB3aXRoIHNpZ25pZmljYW50IGZlYXR1cmVzIGFsb25nIHdpdGggdGhlaXIgY2x1c3RlcnMKYGBge3J9CiNwb3N0LVJlZCBsaXN0CnBvc3RSZWRfc2lnX2ludHJ2bnRuX2NvbXBfY2x1c3RlcnMgPC0gbGVmdF9qb2luKHBvc3RSZWRfc2lnX3JlZF92X3llbF92b2xjYW5vX25vT3V0bGllciwgY2x1c3Rlcl9mZWF0dXJlcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSA9ICJtel9ydCIpCgp3cml0ZV9jc3YocG9zdFJlZF9zaWdfaW50cnZudG5fY29tcF9jbHVzdGVycywKICAgICAgICAgICJGZWF0dXJlIGxpc3RzL3Bvc3RSZWQtc2lnZmVhdHVyZXMtaW50ZXJ2bnRuLWNvbXAuY3N2IikKCiNwb3N0LVllbGxvdyBsaXN0CnBvc3RZZWxsb3dfc2lnX2ludHJ2bnRuX2NvbXBfY2x1c3RlcnMgPC0gbGVmdF9qb2luKHBvc3RZZWxsb3dfc2lnX3JlZF92X3llbF92b2xjYW5vX25vT3V0bGllciwgY2x1c3Rlcl9mZWF0dXJlcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSA9ICJtel9ydCIpCgp3cml0ZV9jc3YocG9zdFllbGxvd19zaWdfaW50cnZudG5fY29tcF9jbHVzdGVycywKICAgICAgICAgICJGZWF0dXJlIGxpc3RzL3Bvc3RZZWxsb3ctc2lnZmVhdHVyZXMtaW50ZXJ2bnRuLWNvbXAuY3N2IikKYGBgCgoKIyMjIyMgUGxvdApgYGB7cn0KKHJlZF92X3llbGxvd192b2xjYW5vX25vT3V0bGllciA8LSByZWRfdl95ZWxfdm9sY2Fub19kYXRhX25vT3V0bGllciAlPiUKICBnZ3Bsb3QoYWVzKHggPSBsb2cyX0ZDX3Bvc3RSZWRfZGl2X3Bvc3RZZWxsb3csIHkgPSBuZWdsb2cxMHAsIAogICAgICAgICAgICAgdGV4dCA9IGdsdWUoIk1hc3NfcmV0ZW50aW9uIHRpbWU6IHttel9ydH0KICAgICAgICAgICAgICAgICAgICAgICAgIFAtdmFsdWU6IHtwfQogICAgICAgICAgICAgICAgICAgICAgICAgRm9sZCBjaGFuZ2UgdG9tYXRvL2NvbnRyb2w6IHtyb3VuZChGQ19wb3N0UmVkX2Rpdl9wb3N0WWVsbG93LCAyKX0iKSkpICsKICBnZW9tX3BvaW50KGNvbG9yID0gImdyZXkiKSArCiAgZ2VvbV9wb2ludChkYXRhID0gcG9zdFJlZF9zaWdfaW50cnZudG5fY29tcF9jbHVzdGVycywgCiAgICAgICAgICAgICBhZXMoeCA9IGxvZzJfRkNfcG9zdFJlZF9kaXZfcG9zdFllbGxvdywgeSA9IG5lZ2xvZzEwcCksCiAgICAgICAgICAgICBjb2xvciA9ICJ0b21hdG8iKSArCiAgZ2VvbV9wb2ludChkYXRhID0gcG9zdFllbGxvd19zaWdfaW50cnZudG5fY29tcF9jbHVzdGVycywgCiAgICAgICAgICAgICBhZXMoeCA9IGxvZzJfRkNfcG9zdFJlZF9kaXZfcG9zdFllbGxvdywgeSA9IG5lZ2xvZzEwcCksCiAgICAgICAgICAgICBjb2xvciA9ICJ5ZWxsb3cyIikgKwogIGdlb21fdmxpbmUoeGludGVyY2VwdCA9IDAuNiwgbGluZXR5cGUgPSAiZGFzaGVkIiwgY29sb3IgPSAiZ3JleSIpICsKICBnZW9tX3ZsaW5lKHhpbnRlcmNlcHQgPSAtMC42LCBsaW5ldHlwZSA9ICJkYXNoZWQiLCBjb2xvciA9ICJncmV5IikgKwogIGdlb21faGxpbmUoeWludGVyY2VwdCA9IDEuMywgbGluZXR5cGUgPSAiZGFzaGVkIiwgY29sb3IgPSAiZ3JleSIpICsKICBjb29yZF9jYXJ0ZXNpYW4oeGxpbSA9IGMoLTUsIDgpKSArCiAgbGFicyh0aXRsZSA9ICJWb2xjYW5vIFBsb3Qgb2YgRmVhdHVyZXMgRGlmZmVyZW50IGluIFBlb3BsZSBBZnRlciBUb21hdG8tU295IGFuZCBDb250cm9sIEp1aWNlIENvbnN1bXB0aW9uIiwKICAgICAgIHN1YnRpdGxlID0gIlJlZCBwb2ludHMgYXJlIGhpZ2hlciBhZnRlciB0b21hdG8tc295IGp1aWNlIGNvbnN1bXB0aW9uIHdoaWxlIHllbGxvdyBwb2ludHMgYXJlIGhpZ2hlciBcbmFmdGVyIGNvbnRyb2wgdG9tYXRvIGp1aWNlIGNvbnN1bXB0aW9uLiBTdWJqZWN0IDYxMDYgcmVtb3ZlZCIsCiAgICAgICBjYXB0aW9uID0gIlZlcnRpY2FsIGRhc2hlZCBsaW5lcyByZXByZXNlbnQgYSBsb2cyIGZvbGQgY2hhbmdlID4gMC42IG9yIDwgLTAuNiwgYW5kIGhvcml6b250YWwgZGFzaGVkIGxpbmUgcmVwcmVzZW50cyBhbiBGRFIgY29ycmVjdGVkIFxucC12YWx1ZSBvZiAwLjA1LiIsCiAgICAgICB4ID0gIkxvZzIgRm9sZCBDaGFuZ2UgKFRvbWF0b1NveS9Db250cm9sKSIsCiAgICAgICB5ID0gIi1Mb2cxMChQLXZhbHVlKSIpICsKICB0aGVtZV9idygpICsKICB0aGVtZShwbG90LnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMiwgaGp1c3QgPSAwKSwKICAgICAgICBwbG90LmNhcHRpb24gPSBlbGVtZW50X3RleHQoaGp1c3QgPSAwLjUpKSkKCihyZWRfdl95ZWxsb3dfdm9sY2Fub19nZ3Bsb3RseV9ub091dGxpZXIgPC0gZ2dwbG90bHkocmVkX3ZfeWVsbG93X3ZvbGNhbm9fbm9PdXRsaWVyLCB0b29sdGlwID0gInRleHQiKSkKYGBgCgpTYXZlIHBsb3RzCmBgYHtyLCBldmFsPUZBTFNFfQojIHNhdmUgdm9sY2FubyBwbG90Cmdnc2F2ZShwbG90ID0gcmVkX3ZfeWVsbG93X3ZvbGNhbm9fbm9PdXRsaWVyLAogICAgICAgZmlsZW5hbWUgPSAicGxvdHMgYW5kIGZpZ3VyZXMvdm9sY2FubyBwbG90cy9yZWRfdl95ZWxsb3dfdm9sY2Fub19ub091dGxpZXIuc3ZnIikKCiMgc2F2ZSBpbnRlcmFjdGl2ZSB2b2xjYW5vIHBsb3QKc2F2ZVdpZGdldCh3aWRnZXQgPSByZWRfdl95ZWxsb3dfdm9sY2Fub19nZ3Bsb3RseV9ub091dGxpZXIsCiAgICAgICAgICAgZmlsZSA9ICJwbG90cyBhbmQgZmlndXJlcy92b2xjYW5vIHBsb3RzL2ludGVyYWN0aXZlX3JlZHZ5ZWxsb3dfdm9sY2Fub19wbG90X25vT3V0bGllci5odG1sIikKYGBgCgoKIyMjIyBSZWQKCiMjIyMjIFdyYW5nbGUgKG5vIG91dGxpZXIpCmBgYHtyfQojIGNhbGN1bGF0ZSBtZWFuIHJlbCBhYnVuZCAobm90IGxvZykgYnkgc2FtcGxlLCBhbmQgYXZnIGZvbGQgY2hhbmdlIChGQykgZGlmZiBieSBmZWF0dXJlCnJlZF92b2xjYW5vX2RhdGFfbm9PdXRsaWVyIDwtIGRmX2Zvcl9zdGF0cyAlPiUKICBmaWx0ZXIoSW50ZXJ2ZW50aW9uID09ICJSZWQiLAogICAgICAgICBTdWJqZWN0ICE9IDYxMDYpICU+JQogIGdyb3VwX2J5KHByZV9wb3N0LCBtel9ydCkgJT4lCiAgc3VtbWFyaXplKG1lYW5fcmVsX2FidW5kID0gbWVhbihyZWxfYWJ1bmQpKSAlPiUKICBwaXZvdF93aWRlcihuYW1lc19mcm9tID0gcHJlX3Bvc3QsIHZhbHVlc19mcm9tID0gbWVhbl9yZWxfYWJ1bmQpICU+JQogIG11dGF0ZShGQ19wb3N0X2Rpdl9wcmUgPSBwb3N0L3ByZSkgCgojIGJpbmQgYmFjayBwdmFsCnJlZF90b2JpbmRfbm9PdXRsaWVyIDwtIHJlZF9ub091dGxpZXJfdC50ZXN0X3BhaXJlZCAlPiUKICBkcGx5cjo6c2VsZWN0KHApCgojIGNhbGN1bGF0ZSBsb2cyRkMsIGFuZCAtbG9nMTBwCnJlZF92b2xjYW5vX2RhdGFfbm9PdXRsaWVyIDwtIAogIGJpbmRfY29scyhyZWRfdm9sY2Fub19kYXRhX25vT3V0bGllciwgcmVkX3RvYmluZF9ub091dGxpZXIpICU+JQogIG11dGF0ZShsb2cyX0ZDX3Bvc3RfZGl2X3ByZSA9IGxvZzIoRkNfcG9zdF9kaXZfcHJlKSwKICAgICAgICAgbmVnbG9nMTBwID0gLWxvZzEwKHApKQoKCiMgY3JlYXRlIGEgZGYgb2YgZmVhdHVyZXMgcGFzc2luZyBGQyBhbmQgcHZhbCBjdXRvZmZzIGhpZ2hlciBpbiBwb3N0LWludGVydmVudGlvbiBjb21wYXJlZCB0byBwcmUKcmVkX3ByZV92X3Bvc3Rfdm9sY2Fub19ub091dGxpZXIgPC0gcmVkX3ZvbGNhbm9fZGF0YV9ub091dGxpZXIgJT4lCiAgZmlsdGVyKHAgPD0gMC4wNSAmIGFicyhsb2cyX0ZDX3Bvc3RfZGl2X3ByZSkgPj0gMC42KQoKYGBgCgojIyMjIyBFeHBvcnQgc2lnIGZlYXR1cmVzCgpDcmVhdGUgZmVhdHVyZSBsaXN0cyB3aXRoIHNpZ25pZmljYW50IGZlYXR1cmVzIGFsb25nIHdpdGggdGhlaXIgY2x1c3RlcnMKYGBge3J9CnJlZF9zaWdfcHJlcG9zdF9jb21wX2NsdXN0ZXJzIDwtIGxlZnRfam9pbihyZWRfcHJlX3ZfcG9zdF92b2xjYW5vX25vT3V0bGllciwgY2x1c3Rlcl9mZWF0dXJlcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSA9ICJtel9ydCIpCgp3cml0ZV9jc3YocmVkX3NpZ19wcmVwb3N0X2NvbXBfY2x1c3RlcnMsCiAgICAgICAgICAiRmVhdHVyZSBsaXN0cy9SZWQtc2lnZmVhdHVyZXMtUHJldnNQb3N0LW5vT3V0bGllcnMuY3N2IikKCmBgYAoKCiMjIyMjIFBsb3QKYGBge3J9CihyZWRfdm9sY2Fub19ub091dGxpZXIgPC0gcmVkX3ZvbGNhbm9fZGF0YV9ub091dGxpZXIgJT4lCiAgZ2dwbG90KGFlcyh4ID0gbG9nMl9GQ19wb3N0X2Rpdl9wcmUsIHkgPSBuZWdsb2cxMHAsIAogICAgICAgICAgICAgdGV4dCA9IGdsdWUoIk1hc3NfcmV0ZW50aW9uIHRpbWU6IHttel9ydH0KICAgICAgICAgICAgICAgICAgICAgICAgIFAtdmFsdWU6IHtwfQogICAgICAgICAgICAgICAgICAgICAgICAgRm9sZCBjaGFuZ2UgcG9zdC9wcmU6IHtyb3VuZChGQ19wb3N0X2Rpdl9wcmUsIDIpfSIpKSkgKwogIGdlb21fcG9pbnQoY29sb3IgPSAiZ3JleSIpICsKICBnZW9tX3BvaW50KGRhdGEgPSByZWRfc2lnX3ByZXBvc3RfY29tcF9jbHVzdGVycywgCiAgICAgICAgICAgICBhZXMoeCA9IGxvZzJfRkNfcG9zdF9kaXZfcHJlLCB5ID0gbmVnbG9nMTBwKSwKICAgICAgICAgICAgIGNvbG9yID0gInRvbWF0byIpICsKICBnZW9tX3ZsaW5lKHhpbnRlcmNlcHQgPSAwLjYsIGxpbmV0eXBlID0gImRhc2hlZCIsIGNvbG9yID0gImdyZXkiKSArCiAgZ2VvbV92bGluZSh4aW50ZXJjZXB0ID0gLTAuNiwgbGluZXR5cGUgPSAiZGFzaGVkIiwgY29sb3IgPSAiZ3JleSIpICsgCiAgZ2VvbV9obGluZSh5aW50ZXJjZXB0ID0gMS4zLCBsaW5ldHlwZSA9ICJkYXNoZWQiLCBjb2xvciA9ICJncmV5IikgKwogIGNvb3JkX2NhcnRlc2lhbih4bGltID0gYygtNSwgOCkpICsKICBsYWJzKHRpdGxlID0gIlZvbGNhbm8gUGxvdCBvZiBGZWF0dXJlcyBEaWZmZXJlbnQgaW4gUGVvcGxlIEFmdGVyIFRvbWF0by1Tb3kgSnVpY2UgQ29uc3VtcHRpb24iLAogICAgICAgc3VidGl0bGUgPSAiUmVkIHBvaW50cyBhcmUgaGlnaGVyIGFmdGVyIHRvbWF0by1zb3kganVpY2UgY29uc3VtcHRpb24gd2hlbiBjb21wYXJlZCB0byBwcmlvciB0byBjb25zdW1wdGlvbiIsCiAgICAgICBjYXB0aW9uID0gIlZlcnRpY2FsIGRhc2hlZCBsaW5lcyByZXByZXNlbnQgYW4gYWJzKGxvZyBmb2xkIGNoYW5nZSkgPiAwLjYsIGFuZCBob3Jpem9udGFsIGRhc2hlZCBsaW5lIHJlcHJlc2VudHMgYW4gRkRSIGNvcnJlY3RlZCBcbnAtdmFsdWUgb2YgMC4wNS4iLAogICAgICAgeCA9ICJMb2cyIEZvbGQgQ2hhbmdlIChQb3N0L1ByZSkiLAogICAgICAgeSA9ICItTG9nMTAoUC12YWx1ZSkiKSArCiAgdGhlbWVfYncoKSArCiAgdGhlbWUocGxvdC50aXRsZSA9IGVsZW1lbnRfdGV4dChzaXplID0gMTIsIGhqdXN0ID0gMCksCiAgICAgICAgcGxvdC5jYXB0aW9uID0gZWxlbWVudF90ZXh0KGhqdXN0ID0gMC41KSkpCgoocmVkX3ZvbGNhbm9fZ2dwbG90bHlfbm9PdXRsaWVyIDwtIGdncGxvdGx5KHJlZF92b2xjYW5vX25vT3V0bGllciwgdG9vbHRpcCA9ICJ0ZXh0IikpCmBgYAoKU2F2ZSBwbG90cwpgYGB7ciwgZXZhbD1GQUxTRX0KIyBzYXZlIHZvbGNhbm8gcGxvdApnZ3NhdmUocGxvdCA9IHJlZF92b2xjYW5vX25vT3V0bGllciwKICAgICAgIGZpbGVuYW1lID0gInBsb3RzIGFuZCBmaWd1cmVzL3ZvbGNhbm8gcGxvdHMvcmVkX3ZvbGNhbm9fbm9PdXRsaWVyLnN2ZyIpCgojIHNhdmUgaW50ZXJhY3RpdmUgdm9sY2FubyBwbG90CnNhdmVXaWRnZXQod2lkZ2V0ID0gcmVkX3ZvbGNhbm9fZ2dwbG90bHlfbm9PdXRsaWVyLAogICAgICAgICAgIGZpbGUgPSAicGxvdHMgYW5kIGZpZ3VyZXMvdm9sY2FubyBwbG90cy9pbnRlcmFjdGl2ZV9yZWRfdm9sY2Fub19wbG90X25vT3V0bGllci5odG1sIikKYGBgCgojIyMjIFllbGxvdwoKIyMjIyMgV3JhbmdsZSAobm8gb3V0bGllcikKYGBge3J9CiMgY2FsY3VsYXRlIG1lYW4gcmVsIGFidW5kIChub3QgbG9nKSBieSBzYW1wbGUsIGFuZCBhdmcgZm9sZCBjaGFuZ2UgKEZDKSBkaWZmIGJ5IGZlYXR1cmUKeWVsX3ZvbGNhbm9fZGF0YV9ub091dGxpZXIgPC0gZGZfZm9yX3N0YXRzICU+JQogIGZpbHRlcihJbnRlcnZlbnRpb24gPT0gIlllbGxvdyIsCiAgICAgICAgIFN1YmplY3QgIT0gNjEwNikgJT4lCiAgZ3JvdXBfYnkocHJlX3Bvc3QsIG16X3J0KSAlPiUKICBzdW1tYXJpemUobWVhbl9yZWxfYWJ1bmQgPSBtZWFuKHJlbF9hYnVuZCkpICU+JQogIHBpdm90X3dpZGVyKG5hbWVzX2Zyb20gPSBwcmVfcG9zdCwgdmFsdWVzX2Zyb20gPSBtZWFuX3JlbF9hYnVuZCkgJT4lCiAgbXV0YXRlKEZDX3Bvc3RfZGl2X3ByZSA9IHBvc3QvcHJlKSAKCiMgYmluZCBiYWNrIHB2YWwKeWVsX3RvYmluZF9ub091dGxpZXIgPC0gY3RybF9ub091dGxpZXJfdC50ZXN0X3BhaXJlZCAlPiUKICBkcGx5cjo6c2VsZWN0KHApCgojIGNhbGN1bGF0ZSBsb2cyRkMsIGFuZCAtbG9nMTBwCnllbF92b2xjYW5vX2RhdGFfbm9PdXRsaWVyIDwtIAogIGJpbmRfY29scyh5ZWxfdm9sY2Fub19kYXRhX25vT3V0bGllciwgeWVsX3RvYmluZF9ub091dGxpZXIpICU+JQogIG11dGF0ZShsb2cyX0ZDX3Bvc3RfZGl2X3ByZSA9IGxvZzIoRkNfcG9zdF9kaXZfcHJlKSwKICAgICAgICAgbmVnbG9nMTBwID0gLWxvZzEwKHApKQoKCiMgY3JlYXRlIGEgZGYgb2YgZmVhdHVyZXMgcGFzc2luZyBGQyBhbmQgcHZhbCBjdXRvZmZzIGhpZ2hlciBpbiBwb3N0LWludGVydmVudGlvbiBjb21wYXJlZCB0byBwcmUKeWVsX3ByZV92X3Bvc3Rfdm9sY2Fub19ub091dGxpZXIgPC0geWVsX3ZvbGNhbm9fZGF0YV9ub091dGxpZXIgJT4lCiAgZmlsdGVyKHAgPD0gMC4wNSAmIGFicyhsb2cyX0ZDX3Bvc3RfZGl2X3ByZSkgPj0gMC42KQoKYGBgCgojIyMjIyBFeHBvcnQgc2lnIGZlYXR1cmVzCgpDcmVhdGUgZmVhdHVyZSBsaXN0cyB3aXRoIHNpZ25pZmljYW50IGZlYXR1cmVzIGFsb25nIHdpdGggdGhlaXIgY2x1c3RlcnMKYGBge3J9CnllbF9zaWdfcHJlcG9zdF9jb21wX2NsdXN0ZXJzIDwtIGxlZnRfam9pbih5ZWxfcHJlX3ZfcG9zdF92b2xjYW5vX25vT3V0bGllciwgY2x1c3Rlcl9mZWF0dXJlcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSA9ICJtel9ydCIpCgp3cml0ZV9jc3YoeWVsX3NpZ19wcmVwb3N0X2NvbXBfY2x1c3RlcnMsCiAgICAgICAgICAiWWVsbG93LXNpZ2ZlYXR1cmVzLVByZXZzUG9zdC1ub091dGxpZXJzLmNzdiIpCgpgYGAKCiMjIyMjIFBsb3QKYGBge3J9Cih5ZWxfdm9sY2Fub19ub091dGxpZXIgPC0geWVsX3ZvbGNhbm9fZGF0YV9ub091dGxpZXIgJT4lCiAgZ2dwbG90KGFlcyh4ID0gbG9nMl9GQ19wb3N0X2Rpdl9wcmUsIHkgPSBuZWdsb2cxMHAsIAogICAgICAgICAgICAgdGV4dCA9IGdsdWUoIk1hc3NfcmV0ZW50aW9uIHRpbWU6IHttel9ydH0KICAgICAgICAgICAgICAgICAgICAgICAgIFAtdmFsdWU6IHtwfQogICAgICAgICAgICAgICAgICAgICAgICAgRm9sZCBjaGFuZ2UgcG9zdC9wcmU6IHtyb3VuZChGQ19wb3N0X2Rpdl9wcmUsIDIpfSIpKSkgKwogIGdlb21fcG9pbnQoY29sb3IgPSAiZ3JleSIpICsKICBnZW9tX3BvaW50KGRhdGEgPSB5ZWxfc2lnX3ByZXBvc3RfY29tcF9jbHVzdGVycywgCiAgICAgICAgICAgICBhZXMoeCA9IGxvZzJfRkNfcG9zdF9kaXZfcHJlLCB5ID0gbmVnbG9nMTBwKSwKICAgICAgICAgICAgIGNvbG9yID0gInllbGxvdzIiKSArCiAgZ2VvbV92bGluZSh4aW50ZXJjZXB0ID0gMC42LCBsaW5ldHlwZSA9ICJkYXNoZWQiLCBjb2xvciA9ICJncmV5IikgKwogIGdlb21fdmxpbmUoeGludGVyY2VwdCA9IC0wLjYsIGxpbmV0eXBlID0gImRhc2hlZCIsIGNvbG9yID0gImdyZXkiKSArCiAgZ2VvbV9obGluZSh5aW50ZXJjZXB0ID0gMS4zLCBsaW5ldHlwZSA9ICJkYXNoZWQiLCBjb2xvciA9ICJncmV5IikgKwogIGNvb3JkX2NhcnRlc2lhbih4bGltID0gYygtNSwgOCkpICsKICBsYWJzKHRpdGxlID0gIlZvbGNhbm8gUGxvdCBvZiBGZWF0dXJlcyBEaWZmZXJlbnQgaW4gUGVvcGxlIEFmdGVyIENvbnRyb2wsIFllbGxvdyBUb21hdG8gSnVpY2UgQ29uc3VtcHRpb24iLAogICAgICAgc3VidGl0bGUgPSAiWWVsbG93IHBvaW50cyBhcmUgaGlnaGVyIGFmdGVyIGNvbnRyb2wganVpY2UgY29uc3VtcHRpb24gd2hlbiBjb21wYXJlZCB0byBwcmlvciB0byBjb25zdW1wdGlvbi5cblN1YmplY3QgNjEwNiByZW1vdmVkIiwKICAgICAgIGNhcHRpb24gPSAiVmVydGljYWwgZGFzaGVkIGxpbmVzIHJlcHJlc2VudCBhYnMobG9nMiBmb2xkIGNoYW5nZSkgPiAwLjYsIGFuZCBob3Jpem9udGFsIGRhc2hlZCBsaW5lIHJlcHJlc2VudHMgYW4gRkRSIGNvcnJlY3RlZCBcbnAtdmFsdWUgb2YgMC4wNS4iLAogICAgICAgeCA9ICJMb2cyIEZvbGQgQ2hhbmdlIChQb3N0L1ByZSkiLAogICAgICAgeSA9ICItTG9nMTAoUC12YWx1ZSkiKSArCiAgdGhlbWVfYncoKSArCiAgdGhlbWUocGxvdC50aXRsZSA9IGVsZW1lbnRfdGV4dChzaXplID0gMTIsIGhqdXN0ID0gMCksCiAgICAgICAgcGxvdC5jYXB0aW9uID0gZWxlbWVudF90ZXh0KGhqdXN0ID0gMC41KSkpCgooeWVsX3ZvbGNhbm9fZ2dwbG90bHlfbm9PdXRsaWVyIDwtIGdncGxvdGx5KHllbF92b2xjYW5vX25vT3V0bGllciwgdG9vbHRpcCA9ICJ0ZXh0IikpCmBgYAoKU2F2ZSBwbG90cwpgYGB7ciwgZXZhbD1GQUxTRX0KIyBzYXZlIHZvbGNhbm8gcGxvdApnZ3NhdmUocGxvdCA9IHllbF92b2xjYW5vX25vT3V0bGllciwKICAgICAgIGZpbGVuYW1lID0gInBsb3RzIGFuZCBmaWd1cmVzL3ZvbGNhbm8gcGxvdHMveWVsX3ZvbGNhbm9fbm9PdXRsaWVyLnN2ZyIpCgojIHNhdmUgaW50ZXJhY3RpdmUgdm9sY2FubyBwbG90CnNhdmVXaWRnZXQod2lkZ2V0ID0geWVsX3ZvbGNhbm9fZ2dwbG90bHlfbm9PdXRsaWVyLAogICAgICAgICAgIGZpbGUgPSAicGxvdHMgYW5kIGZpZ3VyZXMvdm9sY2FubyBwbG90cy9pbnRlcmFjdGl2ZV95ZWxfdm9sY2Fub19wbG90X25vT3V0bGllci5odG1sIikKYGBgCgoKIyMgSm9pbmVkIGxpc3RzCkhlcmUsIEkgd2FudCB0byB2ZW5uIHNpZ25pZmljYW50IGZlYXR1cmVzIGJlZm9yZSBJIGJlZ2luIHRvIGxvb2sgbW9yZSBpbnRvIHRoZW0uIEkgYW0gaW50ZXJlc3RlZCBpbiB0aGUgZm9sbG93aW5nIGVmZmVjdHM6IHRvbWF0byBlZmZlY3QsIGx5Y29wZW5lIGFuZC9vciBzb3kgaXNvZmxhdm9uZXMgZWZmZWN0LiAKCiMjIyBUb21hdG8gZWZmZWN0CjEuIFRvbWF0byBlZmZlY3Q6IGpvaW4gYSBsaXN0IHRoYXQgb25seSBrZWVwcyBmZWF0dXJlcyB0aGF0IGFyZSBib3RoIHNpZ25pZmljYW50IGluIHByZSB2cy4gcG9zdC1yZWQgYW5kIHByZSB2cy4gcG9zdC15ZWxsb3cuIE1hbnVhbGx5IGRlbGV0ZWQgdGhlIGZlYXR1cmVzIHRoYXQgZG9uJ3QgaGF2ZSB0aGUgc2FtZSBkaXJlY3Rpb25hbGl0eQoKYGBge3J9CiMga2VlcCBvbmx5IGZlYXR1cmVzIHByZXNlbnQgaW4gYm90aCBwcmUgdnMgcG9zdCByZWQgYW5kIHByZSB2cyBwb3N0IHllbGxvdwp0b21hdG9fZWZmZWN0IDwtIGlubmVyX2pvaW4ocmVkX3NpZ19wcmVwb3N0X2NvbXBfY2x1c3RlcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB5ZWxfc2lnX3ByZXBvc3RfY29tcF9jbHVzdGVycywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5ID0gIm16X3J0IikKZGltKHRvbWF0b19lZmZlY3QpCmBgYAoKRXhwb3J0IHZlbm5lZCBsaXN0CmBgYHtyfQp3cml0ZV9jc3YodG9tYXRvX2VmZmVjdCwKICAgICAgICAgICJGZWF0dXJlIGxpc3RzL3NpZy1mZWF0dXJlcy10b21hdG8tZWZmZWN0LmNzdiIpCmBgYAoKCiMjIyMgTXVtbWljaG9nIG1hdGNoZXMKCmBgYHtyfQojIHJlYWQgaW4gaGl0cyBmcm9tIHJlZCAKcmVkX211bW1pY2hvZ19oaXRzIDwtIHJlYWRfY3N2KCIuLi9tdW1taWNob2cgYW5hbHlzaXMvcmVkLWMxOC1taXhlZCBtb2RlIHJlc3VsdHMtaW50ZWcvcmVkLWMxOC1tdW1taWNob2dfbWF0Y2hlZF9jb21wb3VuZF9hbGwuY3N2IikgJT4lCiAgbXV0YXRlKFF1ZXJ5Lk1hc3MgPSByb3VuZChRdWVyeS5NYXNzLCBkaWdpdHMgPSA0KSkgJT4lICMga2VlcCA0IGRlY2ltYWwgcG9pbnRzIGZvciBtYXNzCiAgdW5pdGUobXpfcnQsCiAgICAgICAgYygiUXVlcnkuTWFzcyIsICJSZXRlbnRpb24uVGltZSIpLAogICAgICAgIHNlcCA9ICJfIikKCmBgYAoKCk11bW1pY2hvZyBtYWtlcyBhIGxpc3Qgb2YgaGl0cyBmb3IgYWxsIG9mIHRoZSBjb21wb3VuZHMsIHNvIHdlIG9ubHkgbmVlZCB0byBkbyBhbiBpbm5lciBqb2luIGZvciBvbmUgb2YgdGhlIGxpc3RzLiBUaGUgb3V0Y29tZSB3b3VsZCBiZSB0aGUgc2FtZSBmb3IgYWxsIG9mIHRoZSBsaXN0cyB1c2VkIHNpbmNlIEkgaGF2ZSB0byBpbnB1dCBteSB3aG9sZSBkYXRhc2V0IChubyBjdXRvZmZzKSBpbnRvIGFuYWx5c2lzLiAKCmBgYHtyfQptdW1taWNob2dfbWFzc19tYXRjaGVzX3RvbWF0byA8LSBpbm5lcl9qb2luKHRvbWF0b19lZmZlY3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVkX211bW1pY2hvZ19oaXRzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5ID0gIm16X3J0IikKCmxlbmd0aCh1bmlxdWUobXVtbWljaG9nX21hc3NfbWF0Y2hlc190b21hdG8kbXpfcnQpKSAjIGhvdyBtYW55PwoKdGliYmxlKHVuaXF1ZShtdW1taWNob2dfbWFzc19tYXRjaGVzX3RvbWF0byRtel9ydCkpICMgd2hpY2ggZmVhdHVyZXMgaGF2ZSBhIGhpdCB3aXRoIG11bW1pY2hvZz8KCmBgYAoKCgoKCiMjIyMgQm94cGxvdHMKCgojIyMjIyBhbGwgc2lnIHRvbWF0byBmZWF0dXJlcwoKYGBge3J9CiMgbWV0YWJzIHdpdGggcHZhbCA8IDAuMDUgYW5kIGZjID49IDEuNTEKc2lnbWV0YWJzX3RvbWF0b19lZmZlY3QgPC0gdG9tYXRvX2VmZmVjdCRtel9ydCAKYGBgCgpgYGB7cn0KdG9tYXRvX2VmZmVjdF9kZl9mb3Jfc3RhdHNfd2lkZSA8LSBkZl9mb3Jfc3RhdHMgJT4lCiAgZHBseXI6OnNlbGVjdCghcmVsX2FidW5kKSAlPiUKICBwaXZvdF93aWRlcihuYW1lc19mcm9tID0gbXpfcnQsCiAgICAgICAgICAgICAgdmFsdWVzX2Zyb20gPSByZWxfYWJ1bmRfbG9nMikgJT4lCiAgZHBseXI6OnNlbGVjdChjKDE6MTEpLAogICAgICAgICAgICAgICAgKGFsbF9vZihzaWdtZXRhYnNfdG9tYXRvX2VmZmVjdCkpKQoKIyBtYWtlIHRpZHkgZGYKdG9tYXRvX2VmZmVjdF9kZl9mb3Jfc3RhdHNfdGlkeSA8LSB0b21hdG9fZWZmZWN0X2RmX2Zvcl9zdGF0c193aWRlICU+JQogIHBpdm90X2xvbmdlcihjb2xzID0gMTI6bmNvbCguKSwKICAgICAgICAgICAgICAgbmFtZXNfdG8gPSAibXpfcnQiLAogICAgICAgICAgICAgICB2YWx1ZXNfdG8gPSAicmVsX2FidW5kX2xvZzIiKQpgYGAKCmBgYHtyfQojIGNoYW5naW5nIGZhY3RvciBsZXZlbHMgZm9yIHByZV9wb3N0X2ludGVydmVudGlvbgp0b21hdG9fZWZmZWN0X2RmX2Zvcl9zdGF0c190aWR5JHByZV9wb3N0X2ludGVydmVudGlvbiA8LSBmYWN0b3IodG9tYXRvX2VmZmVjdF9kZl9mb3Jfc3RhdHNfdGlkeSRwcmVfcG9zdF9pbnRlcnZlbnRpb24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldmVscyA9IGMoInByZV9ZZWxsb3ciLCAicG9zdF9ZZWxsb3ciLCAicHJlX1JlZCIsICJwb3N0X1JlZCIpKQoKbGV2ZWxzKHRvbWF0b19lZmZlY3RfZGZfZm9yX3N0YXRzX3RpZHkkcHJlX3Bvc3RfaW50ZXJ2ZW50aW9uKSAgCmBgYAoKYGBge3IsIGZpZy53aWR0aD0xMH0KdG9tYXRvX2VmZmVjdF9kZl9mb3Jfc3RhdHNfdGlkeSAlPiUgCiAgZ2dwbG90KGFlcyh4ID0gcHJlX3Bvc3RfaW50ZXJ2ZW50aW9uLCB5ID0gcmVsX2FidW5kX2xvZzIsIGZpbGwgPSBJbnRlcnZlbnRpb24pKSArCiAgZ2VvbV9ib3hwbG90KG91dGxpZXIuc2hhcGUgPSBOQSkgKwogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IGMoIlllbGxvdyIgPSAiZ29sZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUmVkIiA9ICJ0b21hdG8xIikpICsKICBnZW9tX2xpbmUoYWVzKGdyb3VwID0gU3ViamVjdCksIGZpbGwgPSAiYnJvd24iLCBsaW5ld2lkdGggPSAwLjIpICsKICBmYWNldF93cmFwKHZhcnMobXpfcnQpLCBzY2FsZXMgPSAiZnJlZV95IikgKyAKICB0aGVtZV9jbGVhbigpIApgYGAKCgoKCiMjIyBMeWMvc295IGVmZmVjdAoyLiBseWNvcGVuZSBhbmQvb3Igc295IGlzb2ZsYXZvbmVzIGVmZmVjdDogam9pbiBhIGxpc3QgdGhhdCBvbmx5IGtlZXBzIGZlYXR1cmVzIHRoYXQgYXJlOgotIHNpZ25pZmljYW50bHkgZGlmZmVyZW50IGJldHdlZW4gcG9zdC1SZWQgYW5kIHBvc3QtWWVsbG93LCAKLSBhbmQgc2lnbmlmaWNhbnQgYmV0d2VlbiBwcmUtIGFuZCBwb3N0LVJlZC4gCi0gcmVtb3ZlIGZlYXR1cmVzIHRoYXQgYXJlIHNpZ25pZmljYW50IGJldHdlZW4gcHJlLVllbGxvdyBhbmQgcG9zdC1ZZWxsb3cuCgpgYGB7cn0KIyBjb21iaW5lIHNpZyBmZWF0dXJlcyBmcm9tIHBvc3QtcmVkIHZzIHBvc3QteWVsbG93CnNpZ19wb3N0aW50ZXJ2ZW50aW9uX25vT3V0bGllciA8LSBmdWxsX2pvaW4ocG9zdFJlZF9zaWdfaW50cnZudG5fY29tcF9jbHVzdGVycywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3N0WWVsbG93X3NpZ19pbnRydm50bl9jb21wX2NsdXN0ZXJzKQpkaW0oc2lnX3Bvc3RpbnRlcnZlbnRpb25fbm9PdXRsaWVyKQoKIyBzZWxlY3Qgb25seSBzaWcgZmVhdHVyZXMgdGhhdCBhcmUgcHJlc2VudCB3aGVuIGNvbXBhcmluZyBwcmUtUmVkIHRvIHBvc3QtUmVkCmx5Y19zb3lfZWZmZWN0IDwtIGlubmVyX2pvaW4oc2lnX3Bvc3RpbnRlcnZlbnRpb25fbm9PdXRsaWVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZF9zaWdfcHJlcG9zdF9jb21wX2NsdXN0ZXJzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5ID0gIm16X3J0IikgCmRpbShseWNfc295X2VmZmVjdCkKCmBgYAoKRXhwb3J0IHZlbm5lZCBsaXN0CmBgYHtyfQp3cml0ZV9jc3YobHljX3NveV9lZmZlY3QsCiAgICAgICAgICAiRmVhdHVyZSBsaXN0cy9zaWctZmVhdHVyZXMtbHljLXNveS1lZmZlY3QuY3N2IikKYGBgCgojIyMjIE11bW1pY2hvZyBtYXRjaGVzCgpNdW1taWNob2cgbWFrZXMgYSBsaXN0IG9mIGhpdHMgZm9yIGFsbCBvZiB0aGUgY29tcG91bmRzLCBzbyB3ZSBvbmx5IG5lZWQgdG8gZG8gYW4gaW5uZXIgam9pbiBmb3Igb25lIG9mIHRoZSBsaXN0cy4gVGhlIG91dGNvbWUgd291bGQgYmUgdGhlIHNhbWUgZm9yIGFsbCBvZiB0aGUgbGlzdHMgdXNlZCBzaW5jZSBJIGhhdmUgdG8gaW5wdXQgbXkgd2hvbGUgZGF0YXNldCAobm8gY3V0b2ZmcykgaW50byBhbmFseXNpcy4gCgpgYGB7cn0KbXVtbWljaG9nX21hc3NfbWF0Y2hlc19seWNzb3kgPC0gaW5uZXJfam9pbihseWNfc295X2VmZmVjdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWRfbXVtbWljaG9nX2hpdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgPSAibXpfcnQiKQoKbGVuZ3RoKHVuaXF1ZShtdW1taWNob2dfbWFzc19tYXRjaGVzX2x5Y3NveSRtel9ydCkpICMgaG93IG1hbnk/Cgp0aWJibGUodW5pcXVlKG11bW1pY2hvZ19tYXNzX21hdGNoZXNfbHljc295JG16X3J0KSkgIyB3aGljaCBmZWF0dXJlcyBoYXZlIGEgaGl0IHdpdGggbXVtbWljaG9nPwoKYGBgCgoKCgpgYGB7cn0KIyBtYXAgS0VHRyBJRHMgdG8gY29tcG91bmQgbmFtZXMKbHljc295X0tFR0dtYXRjaGVzIDwtIGFzLmRhdGEuZnJhbWUoY3Bka2VnZzJuYW1lKG11bW1pY2hvZ19tYXNzX21hdGNoZXNfbHljc295JE1hdGNoZWQuQ29tcG91bmQpKQoKbXVtbWljaG9nX21hc3NfbWF0Y2hlc19seWNzb3kkTkFNRSA8LSBseWNzb3lfS0VHR21hdGNoZXMkTkFNRQoKYGBgCgoKCiMjIyMgQm94cGxvdHMKCgojIyMjIyBhbGwgc2lnIHRvbWF0byBmZWF0dXJlcwoKYGBge3J9CiMgbWV0YWJzIHdpdGggcHZhbCA8IDAuMDUgYW5kIGZjID49IDEuNTEKc2lnbWV0YWJzX2x5Y3NveV9lZmZlY3QgPC0gbHljX3NveV9lZmZlY3QkbXpfcnQgCmBgYAoKYGBge3J9Cmx5Y3NveV9lZmZlY3RfZGZfZm9yX3N0YXRzX3dpZGUgPC0gZGZfZm9yX3N0YXRzICU+JQogIGRwbHlyOjpzZWxlY3QoIXJlbF9hYnVuZCkgJT4lCiAgcGl2b3Rfd2lkZXIobmFtZXNfZnJvbSA9IG16X3J0LAogICAgICAgICAgICAgIHZhbHVlc19mcm9tID0gcmVsX2FidW5kX2xvZzIpICU+JQogIGRwbHlyOjpzZWxlY3QoYygxOjExKSwKICAgICAgICAgICAgICAgIGFsbF9vZihzaWdtZXRhYnNfbHljc295X2VmZmVjdCkpCgojIG1ha2UgdGlkeSBkZgpseWNzb3lfZWZmZWN0X2RmX2Zvcl9zdGF0c190aWR5IDwtIGx5Y3NveV9lZmZlY3RfZGZfZm9yX3N0YXRzX3dpZGUgJT4lCiAgcGl2b3RfbG9uZ2VyKGNvbHMgPSAxMjpuY29sKC4pLAogICAgICAgICAgICAgICBuYW1lc190byA9ICJtel9ydCIsCiAgICAgICAgICAgICAgIHZhbHVlc190byA9ICJyZWxfYWJ1bmRfbG9nMiIpCmBgYAoKYGBge3J9CiMgY2hhbmdpbmcgZmFjdG9yIGxldmVscyBmb3IgcHJlX3Bvc3RfaW50ZXJ2ZW50aW9uCmx5Y3NveV9lZmZlY3RfZGZfZm9yX3N0YXRzX3RpZHkkcHJlX3Bvc3RfaW50ZXJ2ZW50aW9uIDwtIGZhY3RvcihseWNzb3lfZWZmZWN0X2RmX2Zvcl9zdGF0c190aWR5JHByZV9wb3N0X2ludGVydmVudGlvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV2ZWxzID0gYygicHJlX1llbGxvdyIsICJwb3N0X1llbGxvdyIsICJwcmVfUmVkIiwgInBvc3RfUmVkIikpCgpsZXZlbHMobHljc295X2VmZmVjdF9kZl9mb3Jfc3RhdHNfdGlkeSRwcmVfcG9zdF9pbnRlcnZlbnRpb24pICAKYGBgCgpgYGB7ciwgZmlnLmhlaWdodD00MCwgZmlnLndpZHRoPTMwfQpseWNzb3lfZWZmZWN0X2RmX2Zvcl9zdGF0c190aWR5ICU+JSAKICBnZ3Bsb3QoYWVzKHggPSBwcmVfcG9zdF9pbnRlcnZlbnRpb24sIHkgPSByZWxfYWJ1bmRfbG9nMiwgZmlsbCA9IEludGVydmVudGlvbikpICsKICBnZW9tX2JveHBsb3Qob3V0bGllci5zaGFwZSA9IE5BKSArCiAgc2NhbGVfZmlsbF9tYW51YWwodmFsdWVzID0gYygiWWVsbG93IiA9ICJnb2xkIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSZWQiID0gInRvbWF0bzEiKSkgKwogIGdlb21fbGluZShhZXMoZ3JvdXAgPSBTdWJqZWN0KSwgbGluZXdpZHRoID0gMC4yKSArCiAgZmFjZXRfd3JhcCh2YXJzKG16X3J0KSwgc2NhbGVzID0gImZyZWVfeSIpICsgCiAgdGhlbWVfY2xlYW4oKSAKYGBgCgoKIyMjIExvdyBjYXJvdGVub2lkIHRvbWF0byBlZmZlY3QKMi4geWVsbG93IHRvbWF0byBlZmZlY3Q6IHVzZSBsaXN0IHRoYXQgb25seSBrZWVwcyBmZWF0dXJlcyB0aGF0IGFyZSBib3RoIHNpZ25pZmljYW50IGJldHdlZW4gcG9zdC1SZWQgYW5kIHBvc3QtWWVsbG93IHRpbWVwb2ludHMsIGFuZCBzaWduaWZpY2FudCBiZXR3ZWVuIHByZS0gYW5kIHBvc3QtWWVsbG93LiBUaGVzZSBmZWF0dXJlcyBhcmUgTk9UIHNpZ25pZmljYW50IGJldHdlZW4gcHJlLVllbGxvdyBhbmQgcG9zdC1ZZWxsb3cuCgpgYGB7cn0KIyBzaWcgZmVhdHVyZXMgZnJvbSBwb3N0LXJlZCB2cyBwb3N0LXllbGxvdwpkaW0oc2lnX3Bvc3RpbnRlcnZlbnRpb25fbm9PdXRsaWVyKQoKIyBzZWxlY3Qgb25seSBzaWcgZmVhdHVyZXMgdGhhdCBhcmUgcHJlc2VudCB3aGVuIGNvbXBhcmluZyBwcmUtWWVsbG93IHRvIHBvc3QtWWVsbG93Cmxvd19jYXJvdF90b21hdG9fZWZmZWN0IDwtIGlubmVyX2pvaW4oc2lnX3Bvc3RpbnRlcnZlbnRpb25fbm9PdXRsaWVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHllbF9zaWdfcHJlcG9zdF9jb21wX2NsdXN0ZXJzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5ID0gIm16X3J0IikgCmRpbShsb3dfY2Fyb3RfdG9tYXRvX2VmZmVjdCkKYGBgCgpFeHBvcnQgdmVubmVkIGxpc3QKYGBge3J9CndyaXRlX2Nzdihsb3dfY2Fyb3RfdG9tYXRvX2VmZmVjdCwKICAgICAgICAgICJGZWF0dXJlIGxpc3RzL3NpZy1mZWF0dXJlcy1sb3ctY2Fyb3QtdG9tYXRvLWVmZmVjdC5jc3YiKQpgYGAKCiMjIyMgTXVtbWljaG9nIG1hc3NlcwpgYGB7cn0KbXVtbWljaG9nX21hc3NfbWF0Y2hlc195ZWxsb3dfdG9tYXRvIDwtIGlubmVyX2pvaW4obG93X2Nhcm90X3RvbWF0b19lZmZlY3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVkX211bW1pY2hvZ19oaXRzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5ID0gIm16X3J0IikKCnRpYmJsZSh1bmlxdWUobXVtbWljaG9nX21hc3NfbWF0Y2hlc195ZWxsb3dfdG9tYXRvJG16X3J0KSkgIyB3aGljaCBmZWF0dXJlcyBoYXZlIGEgaGl0IHdpdGggbXVtbWljaG9nPwpsZW5ndGgodW5pcXVlKG11bW1pY2hvZ19tYXNzX21hdGNoZXNfeWVsbG93X3RvbWF0byRtel9ydCkpICMgaG93IG1hbnk/CmBgYAoKCiMjIyMgQm94cGxvdHMKCgojIyMjIyBhbGwgc2lnIHllbGxvdyB0b20gZmVhdHVyZXMKCmBgYHtyfQojIG1ldGFicyB3aXRoIHB2YWwgPCAwLjA1IGFuZCBmYyA+PSAxLjUxCnNpZ21ldGFic195ZWxsb3dfZWZmZWN0IDwtIGFzLmNoYXJhY3Rlcihsb3dfY2Fyb3RfdG9tYXRvX2VmZmVjdCRtel9ydCkKYGBgCgpgYGB7cn0KeWVsbG93X2VmZmVjdF9kZl9mb3Jfc3RhdHNfd2lkZSA8LSBkZl9mb3Jfc3RhdHMgJT4lCiAgZHBseXI6OnNlbGVjdCghcmVsX2FidW5kKSAlPiUKICBwaXZvdF93aWRlcihuYW1lc19mcm9tID0gbXpfcnQsCiAgICAgICAgICAgICAgdmFsdWVzX2Zyb20gPSByZWxfYWJ1bmRfbG9nMikgJT4lCiAgZHBseXI6OnNlbGVjdChjKDE6MTEpLAogICAgICAgICAgICAgICAgYWxsX29mKHNpZ21ldGFic195ZWxsb3dfZWZmZWN0KSkKCiMgbWFrZSB0aWR5IGRmCnllbGxvd19lZmZlY3RfZGZfZm9yX3N0YXRzX3RpZHkgPC0geWVsbG93X2VmZmVjdF9kZl9mb3Jfc3RhdHNfd2lkZSAlPiUKICBwaXZvdF9sb25nZXIoY29scyA9IDEyOm5jb2woLiksCiAgICAgICAgICAgICAgIG5hbWVzX3RvID0gIm16X3J0IiwKICAgICAgICAgICAgICAgdmFsdWVzX3RvID0gInJlbF9hYnVuZF9sb2cyIikKYGBgCgpgYGB7cn0KIyBjaGFuZ2luZyBmYWN0b3IgbGV2ZWxzIGZvciBwcmVfcG9zdF9pbnRlcnZlbnRpb24KeWVsbG93X2VmZmVjdF9kZl9mb3Jfc3RhdHNfdGlkeSRwcmVfcG9zdF9pbnRlcnZlbnRpb24gPC0gZmFjdG9yKHllbGxvd19lZmZlY3RfZGZfZm9yX3N0YXRzX3RpZHkkcHJlX3Bvc3RfaW50ZXJ2ZW50aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXZlbHMgPSBjKCJwcmVfWWVsbG93IiwgInBvc3RfWWVsbG93IiwgInByZV9SZWQiLCAicG9zdF9SZWQiKSkKCmxldmVscyh5ZWxsb3dfZWZmZWN0X2RmX2Zvcl9zdGF0c190aWR5JHByZV9wb3N0X2ludGVydmVudGlvbikgIApgYGAKCmBgYHtyLCBmaWcud2lkdGg9MTJ9CnllbGxvd19lZmZlY3RfZGZfZm9yX3N0YXRzX3RpZHkgJT4lIAogIGdncGxvdChhZXMoeCA9IHByZV9wb3N0X2ludGVydmVudGlvbiwgeSA9IHJlbF9hYnVuZF9sb2cyLCBmaWxsID0gSW50ZXJ2ZW50aW9uKSkgKwogIGdlb21fYm94cGxvdChvdXRsaWVyLnNoYXBlID0gTkEpICsKICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXMgPSBjKCJZZWxsb3ciID0gImdvbGQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJlZCIgPSAidG9tYXRvMSIpKSArCiAgZ2VvbV9saW5lKGFlcyhncm91cCA9IFN1YmplY3QpLCBmaWxsID0gImJyb3duIiwgbGluZXdpZHRoID0gMC4yKSArCiAgZmFjZXRfd3JhcCh2YXJzKG16X3J0KSwgc2NhbGVzID0gImZyZWVfeSIpICsgCiAgdGhlbWVfY2xlYW4oKSAKYGBgCgojIEltbXVubyBDb3JyZWxhdGlvbnMKCklMLTUsIElMLTEycDcwLCBhbmQgR00tQ1NGIHdlcmUgc2lnbmlmaWNhbnRseSBkZWNyZWFzZWQgYWZ0ZXIgdG9tYXRvLXNveSBpbnRlcnZlbnRpb24gKG9ubHkgd2hlbiBjb21wYXJpbmcgcHJlIHRvIHBvc3QgaW4gUmVkKSBhY2NvcmRpbmcgdG8gV2lsY294b24gcmFuay1zdW0gdGVzdHMgKHA8MC4wNSkuIEltbXVuZSBjZWxsIHR5cGVzIHdlcmUgc2lnbmlmaWNhbnRseSBhbHRlcmVkIGluIGFsbCAzIGNvbXBhcmlzb25zIC0gc28gbGV0J3Mgc2VlIGhvdyB0aGVzZSBzaWduaWZpY2FudCBpbW11bm8gb3V0Y29tZXMgY29ycmVsYXRlIHdpdGggbWV0YWJvbGl0ZXMgZm91bmQgdG8gYmUgc2lnbmlmaWNhbnQgYXQgcCA+IDAuMDUgYW5kIEZDID49MS42MS4KCkltcG9ydCBvdGhlciBvdXRjb21lcyAoY2Fyb3Rlbm9pZHMgYW5kIGltbXVub2xvZ3kgZGF0YSkKYGBge3J9CiMgbG9hZCBkYXRhCmNhcm90X2ltbXVub2xvZ3lfbWV0YSA8LSByZWFkX2V4Y2VsKCJDb21waWxlZERhdGFfUmVzdWx0c19NZXRhLnhsc3giLAogICAgICAgICAgICAgICAgICAgICAgICAgc2hlZXQgPSAibWV0YWRhdGFfY29ycmVjdGVkX3dpdGhzZXF1ZW5jZSIpCgojIGNsZWFuIHVwIHZhcmlhYmxlIG5hbWVzIApjYXJvdF9pbW11bm9sb2d5X21ldGEgPC0gY2xlYW5fbmFtZXMoY2Fyb3RfaW1tdW5vbG9neV9tZXRhKQpgYGAKCiMjIFdyYW5nbGUgCgpgYGB7cn0KIyBjb252ZXJ0IHZhcmlhYmxlcyB0aGF0IHNob3VsZCBiZSBmYWN0b3JzIHRvIGZhY3RvcnMKY2Fyb3RfaW1tdW5vbG9neV9tZXRhIDwtIGNhcm90X2ltbXVub2xvZ3lfbWV0YSAlPiUKICBmaWx0ZXIoaW50ZXJ2ZW50aW9uICE9ICJCYXNlbGluZSIpICU+JQogIG11dGF0ZShhY3Jvc3MoLmNvbHMgPSBjKCJwYXRpZW50X2lkIiwgInBlcmlvZCIsIAogICAgICAgICAgICAgICAgICAgICAgICAgICJpbnRlcnZlbnRpb24iLCAiaW50ZXJ2ZW50aW9uX3dlZWsiLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAicHJlX3Bvc3QiLCAic2V4IiwgInNlcXVlbmNlIiksCiAgICAgICAgICAgICAgICAuZm5zID0gYXMuZmFjdG9yKSkKCgojIHNvbWUgc3R1ZmYgY2FtZSBpbiBhcyBjaGFyYWN0ZXJzIGJ1dCBzaG91bGQgYmUgbnVtZXJpYwpjYXJvdF9pbW11bm9sb2d5X21ldGEgPC0gY2Fyb3RfaW1tdW5vbG9neV9tZXRhICU+JQogIG11dGF0ZShhY3Jvc3MoLmNvbHMgPSBjKCJpbF8yIiwgImlsXzEwIiwgImlsXzEzIiwgImlsXzQiKSwKICAgICAgICAgICAgICAgIC5mbnMgPSBhcy5udW1lcmljKSkKCgoKIyBjaGFuZ2luZyBmYWN0b3IgbGV2ZWxzIGZvciBwcmVfcG9zdApjYXJvdF9pbW11bm9sb2d5X21ldGEkcHJlX3Bvc3QgPC0gZmFjdG9yKGNhcm90X2ltbXVub2xvZ3lfbWV0YSRwcmVfcG9zdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV2ZWxzID0gYygicHJlIiwgInBvc3QiKSkKCmxldmVscyhjYXJvdF9pbW11bm9sb2d5X21ldGEkcHJlX3Bvc3QpICAgICAgICAKCiMgQ2FsY3VsYXRlIHRvdGFsX2Npc19seWMsIHRvdGFsX2x5YywgYW5kIHRvdGFsX2Nhcm90ZW5vaWRzCmNhcm90X2ltbXVub2xvZ3lfbWV0YSA8LSBjYXJvdF9pbW11bm9sb2d5X21ldGEgJT4lCiAgbXV0YXRlKHRvdGFsX2Npc19seWMgPSBvdGhlcl9jaXNfbHljICsgeDVfY2lzX2x5YywKICAgICAgICAgdG90YWxfbHljID0gYWxsX3RyYW5zX2x5YyArIHRvdGFsX2Npc19seWMsCiAgICAgICAgIHRvdGFsX2Nhcm90ZW5vaWRzID0gbHV0ZWluICsgemVheGFudGhpbiArIGJfY3J5cHRveGFudGhpbiArIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFfY2Fyb3RlbmUgKyBiX2Nhcm90ZW5lICsgdG90YWxfbHljKQpgYGAKCgojIyMgUm0gb3V0bGllcnMKCmBgYHtyfQoKIyB0YWtlIG91dGxpZXJzIG91dCBvZiBjYXJvdF9pbW11bm8gZGYgCmNhcm90X2ltbXVub2xvZ3lfbWV0YV9ub091dGxpZXIgPC0gY2Fyb3RfaW1tdW5vbG9neV9tZXRhICU+JQogIGZpbHRlcihwYXRpZW50X2lkICE9IDYxMDYpCgojIGFkZCBzaWcgaW1tdW5vIG91dGNvbWUgY29sdW1ucyB0byBkYXRhc2V0CmZvcmNvcnJfbWV0YWJzbG9nMl9pbW11bm9fbm9PdXRsaWVyIDwtIGRmX2Zvcl9zdGF0c193aWRlX25vT3V0bGllciAlPiUKICBtdXRhdGUoaWxfNSA9IGNhcm90X2ltbXVub2xvZ3lfbWV0YV9ub091dGxpZXIkaWxfNSwKICAgICAgICAgaWxfMTJwNzAgPSBjYXJvdF9pbW11bm9sb2d5X21ldGFfbm9PdXRsaWVyJGlsXzEycDcwLAogICAgICAgICBnbV9jc2YgPSBjYXJvdF9pbW11bm9sb2d5X21ldGFfbm9PdXRsaWVyJGdtX2NzZiwKICAgICAgICAgdG90YWxfbHljID0gY2Fyb3RfaW1tdW5vbG9neV9tZXRhX25vT3V0bGllciR0b3RhbF9seWMsCiAgICAgICAgICMgc2lnIGltbXVuZSBjZWxscyBwcmUgdnMuIHBvc3QgcmVkCiAgICAgICAgIENENDVST3Bvc19DRDQ1UkFuZWdfRU1DRDggPSBjYXJvdF9pbW11bm9sb2d5X21ldGFfbm9PdXRsaWVyJHgwOF9jZDQ1cm9fY2Q0NXJhX2VtX2NkOCwKICAgICAgICAgQ0QxOXBvc0NEM25lZ19CY2VsbHMgPSBjYXJvdF9pbW11bm9sb2d5X21ldGFfbm9PdXRsaWVyJHgyNV9jZDE5X2NkM19iX2NlbGxzLAogICAgICAgICBDRDI3bmVnX0lnRHBvc19uYWl2ZUJjZWxscyA9IGNhcm90X2ltbXVub2xvZ3lfbWV0YV9ub091dGxpZXIkeDI2X2NkMjdfaWdfZF9uYWl2ZV9iX2NlbGxzLAogICAgICAgICAjIHNpZyBpbW11bmUgY2VsbHMgcG9zdC15ZWxsb3cgdnMuIHBvc3QgcmVkCiAgICAgICAgIENEMTZuZWdOS2NlbGxzID0gY2Fyb3RfaW1tdW5vbG9neV9tZXRhX25vT3V0bGllciR4MzhfY2QxNl9ua19jZWxscywKICAgICAgICAgQ0QxNHBvc01EU0NzID0gY2Fyb3RfaW1tdW5vbG9neV9tZXRhX25vT3V0bGllciR4NDBfY2QxNF9tZHNjX21vbm8pCgoKYGBgCgoKCkhlcmUsIEkgYW0gZ29pbmcgdG8gbG9vayBhdCBjb3JyZWxhdGlvbnMgYmV0d2VlbiBmb2xkIGNoYW5nZSBkaWZmZXJlbmNlcyBhbmQgc2lnIG1ldGFib2xpdGVzIGZyb20gdGhlIGx5Y29wZW5lL3NveSBlZmZlY3QgbGlzdAoKIyMjIE1vcmUgd3JhbmdsaW5nCk5vIG91dGxpZXJzCgpTdWJzZXQgZGYncyBpbnRvIHByZSBhbmQgcG9zdCAKYGBge3J9CiMgcHJlCmZvcmNvcnJfcHJlX21ldGFic2xvZzJfaW1tdW5vX25vT3V0bGllciA8LSBmb3Jjb3JyX21ldGFic2xvZzJfaW1tdW5vX25vT3V0bGllciAlPiUKICBkcGx5cjo6c2VsZWN0KFN1YmplY3QsIEludGVydmVudGlvbiwgcHJlX3Bvc3QsIDEyOm5jb2woLikpICU+JQogIGZpbHRlcihwcmVfcG9zdCA9PSAicHJlIikKCiMgcG9zdCAKZm9yY29ycl9wb3N0X21ldGFic2xvZzJfaW1tdW5vX25vT3V0bGllciA8LSBmb3Jjb3JyX21ldGFic2xvZzJfaW1tdW5vX25vT3V0bGllciAlPiUKICBkcGx5cjo6c2VsZWN0KFN1YmplY3QsIEludGVydmVudGlvbiwgcHJlX3Bvc3QsIDEyOm5jb2woLikpICU+JQogIGZpbHRlcihwcmVfcG9zdCA9PSAicG9zdCIpCmBgYAoKQ3JlYXRlIGRmIHdpdGggZGlmZmVyZW5jZXMgY2FsY3VsYXRlZCBmb3IgZWFjaCBvdXRjb21lCmBgYHtyfQojIGRpZmZlcmVuY2UgZm9yIGNhbGN1bGF0ZWQgZm9yIGVhY2ggb3V0Y29tZQpmb3Jjb3JyX2RpZmZfcmVkX21ldGFic2xvZzJfaW1tdW5vX25vT3V0bGllciA8LSBmb3Jjb3JyX3Bvc3RfbWV0YWJzbG9nMl9pbW11bm9fbm9PdXRsaWVyWywtYygxOjMpXSAtIGZvcmNvcnJfcHJlX21ldGFic2xvZzJfaW1tdW5vX25vT3V0bGllclssLWMoMTozKV0KCmBgYAoKIyMgTHljc295IG1ldGFiIGxpc3QgQ29ycgpUaGVzZSBhcmUgY29ycmVsYXRpb25zIGJhc2VkIG9uIHNpZ25pZmljYW50IG1ldGFib2xpdGVzIHdpdGggRkRSIDwgMC4wNSBBTkQgRkMgPiAxLjUxIChmcm9tIGx5Yy9zb3kgZWZmZWN0IGxpc3QpIGFnYWluc3QgaW1tdW5vIG91dGNvbWVzIHRoYXQgd2VyZSBzaWduaWZpY2FudCAocGFkaiA8IDAuMDUpIHdoZW4gY29tcGFyaW5nIHByZSB0byBwb3N0IHJlZCBpbnRlcnZlbnRpb24uCgpgYGB7cn0KIyBhZGQgc3ViamVjdCBhbmQgaW50ZXJ2ZW50aW9uIGJhY2sgdG8gZGYuIFNlbGVjdCBvbmx5IHNpZ25pZmljYW50IG1ldGFib2xpdGVzIChwdmFsID4gMC4wNSBhbmQgRkMgPj0xLjUxKSB0aGF0IGFyZSBpbiBseWMvc295IGVmZmVjdCBsaXN0Cmx5Y19zb3lfZm9yY29ycl9kaWZmX3JlZF9tZXRhYnNsb2cyX2ltbXVub19ub091dGxpZXIgPC0gZm9yY29ycl9kaWZmX3JlZF9tZXRhYnNsb2cyX2ltbXVub19ub091dGxpZXIgJT4lCiAgbXV0YXRlKFN1YmplY3QgPSBmb3Jjb3JyX3Bvc3RfbWV0YWJzbG9nMl9pbW11bm9fbm9PdXRsaWVyJFN1YmplY3QsCiAgICAgICAgIEludGVydmVudGlvbiA9IGZvcmNvcnJfcG9zdF9tZXRhYnNsb2cyX2ltbXVub19ub091dGxpZXIkSW50ZXJ2ZW50aW9uKSAlPiUKICBmaWx0ZXIoSW50ZXJ2ZW50aW9uID09ICJSZWQiKSAlPiUKICBkcGx5cjo6c2VsZWN0KFN1YmplY3QsIEludGVydmVudGlvbiwgaWxfNSwgaWxfMTJwNzAsIGdtX2NzZiwgdG90YWxfbHljLCBDRDQ1Uk9wb3NfQ0Q0NVJBbmVnX0VNQ0Q4LCBDRDE5cG9zQ0QzbmVnX0JjZWxscywgQ0QyN25lZ19JZ0Rwb3NfbmFpdmVCY2VsbHMsIENEMTZuZWdOS2NlbGxzLCBDRDE0cG9zTURTQ3MsIGFsbF9vZihseWNfc295X2VmZmVjdCRtel9ydCkpCgojIGNvcnJlbGF0aW9uIHRhYmxlCmx5Y3NveV9yZWRfY29ycl9yZXN1bHRzX21ldGFic19pbW11bm9fZGlmZl9ub091dGxpZXIgPC0gbHljX3NveV9mb3Jjb3JyX2RpZmZfcmVkX21ldGFic2xvZzJfaW1tdW5vX25vT3V0bGllciAlPiUgCiAgY29ycmVsYXRlKG1ldGhvZCA9ICJzcGVhcm1hbiIpICU+JQogIHJlYXJyYW5nZSgpICU+JQogIHNoYXZlKCkKCmthYmxlKGx5Y3NveV9yZWRfY29ycl9yZXN1bHRzX21ldGFic19pbW11bm9fZGlmZl9ub091dGxpZXIsIGZvcm1hdCA9ICJtYXJrZG93biIsIGRpZ2l0cyA9IDMpCgpgYGAKCkxvb2sgZm9yIHN0cm9uZ2x5IGNvcnJlbGF0ZWQgb3V0Y29tZXMuIFJeMiA+PSB0byAwLjUKYGBge3J9CgpseWNzb3lfcmVkX3NpZ2NvcnJfbWV0YWJzUDA1X0ZDMS42X2ltbXVub2RhdGEgPC0gbHljc295X3JlZF9jb3JyX3Jlc3VsdHNfbWV0YWJzX2ltbXVub19kaWZmX25vT3V0bGllciAlPiUKICBkcGx5cjo6c2VsZWN0KHRlcm0sIGlsXzUsIGlsXzEycDcwLCBnbV9jc2YsIHRvdGFsX2x5YywgQ0Q0NVJPcG9zX0NENDVSQW5lZ19FTUNEOCwgQ0QxOXBvc0NEM25lZ19CY2VsbHMsIENEMjduZWdfSWdEcG9zX25haXZlQmNlbGxzKSAlPiUKICBmaWx0ZXIoYWJzKGx5Y3NveV9yZWRfY29ycl9yZXN1bHRzX21ldGFic19pbW11bm9fZGlmZl9ub091dGxpZXIkaWxfNSkgPj0gMC41IHwKICAgICAgICAgICBhYnMobHljc295X3JlZF9jb3JyX3Jlc3VsdHNfbWV0YWJzX2ltbXVub19kaWZmX25vT3V0bGllciRpbF8xMnA3MCkgPj0gMC41IHwKICAgICAgICAgICBhYnMobHljc295X3JlZF9jb3JyX3Jlc3VsdHNfbWV0YWJzX2ltbXVub19kaWZmX25vT3V0bGllciRnbV9jc2YpID49IDAuNSB8CiAgICAgICAgICAgYWJzKGx5Y3NveV9yZWRfY29ycl9yZXN1bHRzX21ldGFic19pbW11bm9fZGlmZl9ub091dGxpZXIkdG90YWxfbHljKSA+PSAwLjUgfAogICAgICAgICAgIGFicyhseWNzb3lfcmVkX2NvcnJfcmVzdWx0c19tZXRhYnNfaW1tdW5vX2RpZmZfbm9PdXRsaWVyJENENDVST3Bvc19DRDQ1UkFuZWdfRU1DRDgpID49IDAuNSB8CiAgICAgICAgICAgYWJzKGx5Y3NveV9yZWRfY29ycl9yZXN1bHRzX21ldGFic19pbW11bm9fZGlmZl9ub091dGxpZXIkQ0QxOXBvc0NEM25lZ19CY2VsbHMpID49IDAuNSB8CiAgICAgICAgICAgYWJzKGx5Y3NveV9yZWRfY29ycl9yZXN1bHRzX21ldGFic19pbW11bm9fZGlmZl9ub091dGxpZXIkQ0QyN25lZ19JZ0Rwb3NfbmFpdmVCY2VsbHMpID49IDAuNSB8CiAgICAgICAgICAgYWJzKGx5Y3NveV9yZWRfY29ycl9yZXN1bHRzX21ldGFic19pbW11bm9fZGlmZl9ub091dGxpZXIkQ0QxNm5lZ05LY2VsbHMpID49IDAuNSB8CiAgICAgICAgICAgYWJzKGx5Y3NveV9yZWRfY29ycl9yZXN1bHRzX21ldGFic19pbW11bm9fZGlmZl9ub091dGxpZXIkQ0QxNHBvc01EU0NzKSA+PSAwLjUpIAoKa2FibGUobHljc295X3JlZF9zaWdjb3JyX21ldGFic1AwNV9GQzEuNl9pbW11bm9kYXRhLCBkaWdpdHMgPSAzLCBjYXB0aW9uID0gInNpZyBtZXRhYm9saXRlcyBpbiBseWMvc295IGVmZmVjdCBsaXN0IGFuZCBzaWcgaW1tdW5vIG91dGNvbWVzIHdpdGggc3Ryb25nIGNvcnJlbGF0aW9ucy4gUl4yID49IHRvIDAuNS4gQmFzZWQgb24gUHJlIHZzLiBwb3N0LXJlZCBsb2cyZmMiKQpgYGAKCgoKIyMjIHBsb3QKCmBgYHtyLCBmaWcuaGVpZ2h0PTQ1LCBmaWcud2lkdGg9NDB9Cmx5Y3NveV9yZWRfZ2djb3JyX25vT3V0bGllciA8LSByb3VuZChjb3IobHljX3NveV9mb3Jjb3JyX2RpZmZfcmVkX21ldGFic2xvZzJfaW1tdW5vX25vT3V0bGllclssLWMoMToyKV0sIG1ldGhvZCA9ICJzcGVhcm1hbiIpLCBkaWdpdHMgPSAyKQoKCihseWNfc295X2ltbXVub19tZXRhYnNfZ2djb3JycGxvdCA8LSBseWNzb3lfcmVkX2dnY29ycl9ub091dGxpZXIgJT4lCiAgZ2djb3JycGxvdChsYWIgPSBUUlVFLCAKICAgICAgICAgICAgIG91dGxpbmUuY29sb3IgPSAid2hpdGUiLCB0eXBlID0gImZ1bGwiLCBoYy5vcmRlciA9IEZBTFNFLAogICAgICAgICAgICAgZ2d0aGVtZSA9IGdndGhlbWVzOjp0aGVtZV9jbGVhbihiYXNlX3NpemUgPSA4LCBiYXNlX2ZhbWlseSA9ICJzYW5zIiksCiAgY29sb3JzID0gYygiIzZEOUVDMSIsICJ3aGl0ZSIsICIjRTQ2NzI2IikpICsKICB0aGVtZShheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChhbmdsZSA9IDkwLCBzaXplID0gMTIpLAogICAgICAgIGF4aXMudGV4dC55ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMikpKQpgYGAKCkV4cG9ydCBjb3JwbG90CmBgYHtyLCBldmFsPUZBTFNFfQpnZ3NhdmUocGxvdCA9IGx5Y19zb3lfaW1tdW5vX21ldGFic19nZ2NvcnJwbG90LAogICAgICAgZmlsZW5hbWUgPSAicGxvdHMgYW5kIGZpZ3VyZXMvcHJlcG9zdFJlZEZDLUMxOC1OZWctbHljc295LU1ldGFicy1hbmQtaW1tdW5vbG9neS1jb3JycGxvdC5zdmciLAogICAgICAgd2lkdGggPSA0NSwKICAgICAgIGhlaWdodCA9IDQwLAogICAgICAgc2NhbGUgPSAxKQpgYGAKCgpleHBvcnQgYSBkZiBmb3IgaXNvZmxhdm9uZXMgYW5hbHlzaXMKYGBge3J9CndyaXRlX2NzdihpbXBfbWV0YWJpbmRfY2x1c3RfbG9nMl9ub1FDcywgZmlsZSA9ICJtZXRhX29taWNzX25vUUNzLmNzdiIpCmBgYAoK